/* tslint:disable */ /* eslint-disable */ /** * Endaoment API * The official Endaoment API & SDK endpoints * * The version of the OpenAPI document: 0.0.1 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ import * as runtime from '../runtime'; import type { NdaoSdkDonationSwap, NdaoSdkFund, NdaoSdkOrg, NdaoSdkTransaction, } from '../models'; import { NdaoSdkDonationSwapFromJSON, NdaoSdkDonationSwapToJSON, NdaoSdkFundFromJSON, NdaoSdkFundToJSON, NdaoSdkOrgFromJSON, NdaoSdkOrgToJSON, NdaoSdkTransactionFromJSON, NdaoSdkTransactionToJSON, } from '../models'; export interface GetDeployedOrgsRequest { count?: number; offset?: number; } export interface GetDonationSwapTransactionRequest { einOrId: string; amountIn: string; tokenContractAddress?: string; } export interface GetOrgDeployTransactionRequest { einOrId: string; } export interface GetVisibleFundsRequest { count?: number; offset?: number; } export interface SearchOrgsRequest { searchTerm?: string; nteeMajorCodes?: string; nteeMinorCodes?: string; deployedStatus?: SearchOrgsDeployedStatusEnum; countries?: string; claimedStatus?: SearchOrgsClaimedStatusEnum; count?: number; offset?: number; } export interface SearchVisibleFundsRequest { name: string; count?: number; offset?: number; } /** * */ export class EndaomentSdkApi extends runtime.BaseAPI { /** * Only organizations that already have a deployed contract on Endaoment will be returned * Get a list of deployed Org contracts */ async getDeployedOrgsRaw(requestParameters: GetDeployedOrgsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>> { const queryParameters: any = {}; if (requestParameters.count !== undefined) { queryParameters['count'] = requestParameters.count; } if (requestParameters.offset !== undefined) { queryParameters['offset'] = requestParameters.offset; } const headerParameters: runtime.HTTPHeaders = {}; const response = await this.request({ path: `/v1/sdk/orgs/deployed`, method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(NdaoSdkOrgFromJSON)); } /** * Only organizations that already have a deployed contract on Endaoment will be returned * Get a list of deployed Org contracts */ async getDeployedOrgs(requestParameters: GetDeployedOrgsRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const response = await this.getDeployedOrgsRaw(requestParameters, initOverrides); return await response.value(); } /** * If donating ETH, remove the `tokenContractAddress` parameter from the request. The transaction sender must perform an `approve` operation beforehand for any ERC20 donation, giving a correct allowance for the swap. * Get the transaction information required to swap and donate a given token amount to an org */ async getDonationSwapTransactionRaw(requestParameters: GetDonationSwapTransactionRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters.einOrId === null || requestParameters.einOrId === undefined) { throw new runtime.RequiredError('einOrId','Required parameter requestParameters.einOrId was null or undefined when calling getDonationSwapTransaction.'); } if (requestParameters.amountIn === null || requestParameters.amountIn === undefined) { throw new runtime.RequiredError('amountIn','Required parameter requestParameters.amountIn was null or undefined when calling getDonationSwapTransaction.'); } const queryParameters: any = {}; if (requestParameters.einOrId !== undefined) { queryParameters['einOrId'] = requestParameters.einOrId; } if (requestParameters.tokenContractAddress !== undefined) { queryParameters['tokenContractAddress'] = requestParameters.tokenContractAddress; } if (requestParameters.amountIn !== undefined) { queryParameters['amountIn'] = requestParameters.amountIn; } const headerParameters: runtime.HTTPHeaders = {}; const response = await this.request({ path: `/v1/sdk/donations/swap`, method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => NdaoSdkDonationSwapFromJSON(jsonValue)); } /** * If donating ETH, remove the `tokenContractAddress` parameter from the request. The transaction sender must perform an `approve` operation beforehand for any ERC20 donation, giving a correct allowance for the swap. * Get the transaction information required to swap and donate a given token amount to an org */ async getDonationSwapTransaction(requestParameters: GetDonationSwapTransactionRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { const response = await this.getDonationSwapTransactionRaw(requestParameters, initOverrides); return await response.value(); } /** * Get the transaction information required to deploy a given org */ async getOrgDeployTransactionRaw(requestParameters: GetOrgDeployTransactionRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters.einOrId === null || requestParameters.einOrId === undefined) { throw new runtime.RequiredError('einOrId','Required parameter requestParameters.einOrId was null or undefined when calling getOrgDeployTransaction.'); } const queryParameters: any = {}; if (requestParameters.einOrId !== undefined) { queryParameters['einOrId'] = requestParameters.einOrId; } const headerParameters: runtime.HTTPHeaders = {}; const response = await this.request({ path: `/v1/sdk/orgs/deploy`, method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => NdaoSdkTransactionFromJSON(jsonValue)); } /** * Get the transaction information required to deploy a given org */ async getOrgDeployTransaction(requestParameters: GetOrgDeployTransactionRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { const response = await this.getOrgDeployTransactionRaw(requestParameters, initOverrides); return await response.value(); } /** * Only community and transparent funds will be returned * Get a list of Endaoment funds */ async getVisibleFundsRaw(requestParameters: GetVisibleFundsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>> { const queryParameters: any = {}; if (requestParameters.count !== undefined) { queryParameters['count'] = requestParameters.count; } if (requestParameters.offset !== undefined) { queryParameters['offset'] = requestParameters.offset; } const headerParameters: runtime.HTTPHeaders = {}; const response = await this.request({ path: `/v1/sdk/funds`, method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(NdaoSdkFundFromJSON)); } /** * Only community and transparent funds will be returned * Get a list of Endaoment funds */ async getVisibleFunds(requestParameters: GetVisibleFundsRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const response = await this.getVisibleFundsRaw(requestParameters, initOverrides); return await response.value(); } /** * Note: If using multiple parameters, the search will perform an AND operation of all inputs * Get a list of Endaoment Orgs, filtered by search parameters */ async searchOrgsRaw(requestParameters: SearchOrgsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>> { const queryParameters: any = {}; if (requestParameters.searchTerm !== undefined) { queryParameters['searchTerm'] = requestParameters.searchTerm; } if (requestParameters.nteeMajorCodes !== undefined) { queryParameters['nteeMajorCodes'] = requestParameters.nteeMajorCodes; } if (requestParameters.nteeMinorCodes !== undefined) { queryParameters['nteeMinorCodes'] = requestParameters.nteeMinorCodes; } if (requestParameters.deployedStatus !== undefined) { queryParameters['deployedStatus'] = requestParameters.deployedStatus; } if (requestParameters.countries !== undefined) { queryParameters['countries'] = requestParameters.countries; } if (requestParameters.claimedStatus !== undefined) { queryParameters['claimedStatus'] = requestParameters.claimedStatus; } if (requestParameters.count !== undefined) { queryParameters['count'] = requestParameters.count; } if (requestParameters.offset !== undefined) { queryParameters['offset'] = requestParameters.offset; } const headerParameters: runtime.HTTPHeaders = {}; const response = await this.request({ path: `/v1/sdk/orgs/search`, method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(NdaoSdkOrgFromJSON)); } /** * Note: If using multiple parameters, the search will perform an AND operation of all inputs * Get a list of Endaoment Orgs, filtered by search parameters */ async searchOrgs(requestParameters: SearchOrgsRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const response = await this.searchOrgsRaw(requestParameters, initOverrides); return await response.value(); } /** * Only community and transparent funds will be returned * Get a list of Endaoment Funds, filtered by search parameter */ async searchVisibleFundsRaw(requestParameters: SearchVisibleFundsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>> { if (requestParameters.name === null || requestParameters.name === undefined) { throw new runtime.RequiredError('name','Required parameter requestParameters.name was null or undefined when calling searchVisibleFunds.'); } const queryParameters: any = {}; if (requestParameters.name !== undefined) { queryParameters['name'] = requestParameters.name; } if (requestParameters.count !== undefined) { queryParameters['count'] = requestParameters.count; } if (requestParameters.offset !== undefined) { queryParameters['offset'] = requestParameters.offset; } const headerParameters: runtime.HTTPHeaders = {}; const response = await this.request({ path: `/v1/sdk/funds/search`, method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(NdaoSdkFundFromJSON)); } /** * Only community and transparent funds will be returned * Get a list of Endaoment Funds, filtered by search parameter */ async searchVisibleFunds(requestParameters: SearchVisibleFundsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const response = await this.searchVisibleFundsRaw(requestParameters, initOverrides); return await response.value(); } } /** * @export */ export const SearchOrgsDeployedStatusEnum = { Deployed: 'deployed', Undeployed: 'undeployed', All: 'all' } as const; export type SearchOrgsDeployedStatusEnum = typeof SearchOrgsDeployedStatusEnum[keyof typeof SearchOrgsDeployedStatusEnum]; /** * @export */ export const SearchOrgsClaimedStatusEnum = { Claimed: 'claimed', Unclaimed: 'unclaimed', All: 'all' } as const; export type SearchOrgsClaimedStatusEnum = typeof SearchOrgsClaimedStatusEnum[keyof typeof SearchOrgsClaimedStatusEnum];