@neynar/nodejs-sdk
Version:
SDK to interact with Neynar APIs (https://docs.neynar.com/reference/quickstart)
464 lines (463 loc) • 21 kB
TypeScript
/**
* Farcaster API V2
* The Farcaster API allows you to interact with the Farcaster protocol. See the [Neynar docs](https://docs.neynar.com/reference) for more details.
*
* The version of the OpenAPI document: 2.26.1
* Contact: team@neynar.com
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import type { Configuration } from '../configuration';
import type { AxiosPromise, AxiosInstance, RawAxiosRequestConfig } from 'axios';
import { type RequestArgs, BaseAPI } from '../base';
import type { BalanceResponse } from '../models';
import type { DeployFungibleReqBodyMetadataMedia } from '../models';
import type { DeployFungibleResponse } from '../models';
import type { Networks } from '../models';
import type { RelevantFungibleOwnersResponse } from '../models';
/**
* OnchainApi - axios parameter creator
* @export
*/
export declare const OnchainApiAxiosParamCreator: (configuration?: Configuration) => {
/**
* Creates a new token. This is an allowlisted API, reach out if you want access.
* @summary Deploy fungible
* @param {string} owner Ethereum address of the one who is creating the token
* @param {string} symbol Symbol/Ticker for the token
* @param {string} name Name of the token
* @param {DeployFungibleReqBodyMetadataMedia} [metadataMedia]
* @param {string} [metadataDescription] Description of the token
* @param {DeployFungibleMetadataNsfwEnum} [metadataNsfw] Indicates if the token is NSFW (Not Safe For Work).
* @param {string} [metadataWebsiteLink] Website link related to the token
* @param {string} [metadataTwitter] Twitter profile link
* @param {string} [metadataDiscord] Discord server link
* @param {string} [metadataTelegram] Telegram link
* @param {DeployFungibleNetworkEnum} [network] Network/Chain name
* @param {DeployFungibleFactoryEnum} [factory] Factory name - wow -> [wow.xyz](https://wow.xyz) - clanker -> [clanker.world](https://www.clanker.world)
* @param {*} [options] Override http request option.
* @throws {RequiredError}
* @returns {Promise<DeployFungibleResponse>} A promise that resolves to a `DeployFungibleResponse` object
*
* For more information, refer to the [API documentation](https://docs.neynar.com/reference/deploy-fungible)
*
*/
deployFungible: (owner: string, symbol: string, name: string, metadataMedia?: DeployFungibleReqBodyMetadataMedia, metadataDescription?: string, metadataNsfw?: DeployFungibleMetadataNsfwEnum, metadataWebsiteLink?: string, metadataTwitter?: string, metadataDiscord?: string, metadataTelegram?: string, network?: DeployFungibleNetworkEnum, factory?: DeployFungibleFactoryEnum, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
/**
* Fetch a list of relevant owners for a specific FID. This usually shows on a fungible asset page as \"X, Y, Z and N others you know own this asset\".
* @summary Relevant owners
* @param {string} contractAddress Contract address of the fungible asset
* @param {Array<Networks>} networks Comma separated list of networks to fetch balances for. Currently, only \"base\" is supported.
* @param {number} viewerFid The FID of the user to customize this response for. Providing this will also return a list of owners that respects this user\'s mutes and blocks and includes `viewer_context`.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
* @returns {Promise<RelevantFungibleOwnersResponse>} A promise that resolves to a `RelevantFungibleOwnersResponse` object
*
* For more information, refer to the [API documentation](https://docs.neynar.com/reference/fetch-relevant-fungible-owners)
*
*/
fetchRelevantFungibleOwners: (contractAddress: string, networks: Array<Networks>, viewerFid: number, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
/**
* Fetches the token balances of a user given their FID
* @summary Token balance
* @param {number} fid FID of the user to fetch
* @param {Array<Networks>} networks Comma separated list of networks to fetch balances for. Currently, only \"base\" is supported.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
* @returns {Promise<BalanceResponse>} A promise that resolves to a `BalanceResponse` object
*
* For more information, refer to the [API documentation](https://docs.neynar.com/reference/fetch-user-balance)
*
*/
fetchUserBalance: (fid: number, networks: Array<Networks>, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
};
/**
* OnchainApi - functional programming interface
* @export
*/
export declare const OnchainApiFp: (configuration?: Configuration) => {
/**
* Creates a new token. This is an allowlisted API, reach out if you want access.
* @summary Deploy fungible
* @param {string} owner Ethereum address of the one who is creating the token
* @param {string} symbol Symbol/Ticker for the token
* @param {string} name Name of the token
* @param {DeployFungibleReqBodyMetadataMedia} [metadataMedia]
* @param {string} [metadataDescription] Description of the token
* @param {DeployFungibleMetadataNsfwEnum} [metadataNsfw] Indicates if the token is NSFW (Not Safe For Work).
* @param {string} [metadataWebsiteLink] Website link related to the token
* @param {string} [metadataTwitter] Twitter profile link
* @param {string} [metadataDiscord] Discord server link
* @param {string} [metadataTelegram] Telegram link
* @param {DeployFungibleNetworkEnum} [network] Network/Chain name
* @param {DeployFungibleFactoryEnum} [factory] Factory name - wow -> [wow.xyz](https://wow.xyz) - clanker -> [clanker.world](https://www.clanker.world)
* @param {*} [options] Override http request option.
* @throws {RequiredError}
* @returns {Promise<DeployFungibleResponse>} A promise that resolves to a `DeployFungibleResponse` object
*
* For more information, refer to the [API documentation](https://docs.neynar.com/reference/deploy-fungible)
*
*/
deployFungible(owner: string, symbol: string, name: string, metadataMedia?: DeployFungibleReqBodyMetadataMedia, metadataDescription?: string, metadataNsfw?: DeployFungibleMetadataNsfwEnum, metadataWebsiteLink?: string, metadataTwitter?: string, metadataDiscord?: string, metadataTelegram?: string, network?: DeployFungibleNetworkEnum, factory?: DeployFungibleFactoryEnum, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<DeployFungibleResponse>>;
/**
* Fetch a list of relevant owners for a specific FID. This usually shows on a fungible asset page as \"X, Y, Z and N others you know own this asset\".
* @summary Relevant owners
* @param {string} contractAddress Contract address of the fungible asset
* @param {Array<Networks>} networks Comma separated list of networks to fetch balances for. Currently, only \"base\" is supported.
* @param {number} viewerFid The FID of the user to customize this response for. Providing this will also return a list of owners that respects this user\'s mutes and blocks and includes `viewer_context`.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
* @returns {Promise<RelevantFungibleOwnersResponse>} A promise that resolves to a `RelevantFungibleOwnersResponse` object
*
* For more information, refer to the [API documentation](https://docs.neynar.com/reference/fetch-relevant-fungible-owners)
*
*/
fetchRelevantFungibleOwners(contractAddress: string, networks: Array<Networks>, viewerFid: number, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<RelevantFungibleOwnersResponse>>;
/**
* Fetches the token balances of a user given their FID
* @summary Token balance
* @param {number} fid FID of the user to fetch
* @param {Array<Networks>} networks Comma separated list of networks to fetch balances for. Currently, only \"base\" is supported.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
* @returns {Promise<BalanceResponse>} A promise that resolves to a `BalanceResponse` object
*
* For more information, refer to the [API documentation](https://docs.neynar.com/reference/fetch-user-balance)
*
*/
fetchUserBalance(fid: number, networks: Array<Networks>, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<BalanceResponse>>;
};
/**
* OnchainApi - factory interface
* @export
*/
export declare const OnchainApiFactory: (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) => {
/**
* Creates a new token. This is an allowlisted API, reach out if you want access.
* @summary Deploy fungible
* @param {OnchainApiDeployFungibleRequest} requestParameters Request parameters.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
* @returns {Promise<DeployFungibleResponse>} A promise that resolves to a `DeployFungibleResponse` object
*
* For more information, refer to the [API documentation](https://docs.neynar.com/reference/deploy-fungible)
*
*/
deployFungible(requestParameters: OnchainApiDeployFungibleRequest, options?: RawAxiosRequestConfig): AxiosPromise<DeployFungibleResponse>;
/**
* Fetch a list of relevant owners for a specific FID. This usually shows on a fungible asset page as \"X, Y, Z and N others you know own this asset\".
* @summary Relevant owners
* @param {OnchainApiFetchRelevantFungibleOwnersRequest} requestParameters Request parameters.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
* @returns {Promise<RelevantFungibleOwnersResponse>} A promise that resolves to a `RelevantFungibleOwnersResponse` object
*
* For more information, refer to the [API documentation](https://docs.neynar.com/reference/fetch-relevant-fungible-owners)
*
*/
fetchRelevantFungibleOwners(requestParameters: OnchainApiFetchRelevantFungibleOwnersRequest, options?: RawAxiosRequestConfig): AxiosPromise<RelevantFungibleOwnersResponse>;
/**
* Fetches the token balances of a user given their FID
* @summary Token balance
* @param {OnchainApiFetchUserBalanceRequest} requestParameters Request parameters.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
* @returns {Promise<BalanceResponse>} A promise that resolves to a `BalanceResponse` object
*
* For more information, refer to the [API documentation](https://docs.neynar.com/reference/fetch-user-balance)
*
*/
fetchUserBalance(requestParameters: OnchainApiFetchUserBalanceRequest, options?: RawAxiosRequestConfig): AxiosPromise<BalanceResponse>;
};
/**
* OnchainApi - interface
* @export
* @interface OnchainApi
*/
export interface OnchainApiInterface {
/**
* Creates a new token. This is an allowlisted API, reach out if you want access.
* @summary Deploy fungible
* @param {OnchainApiDeployFungibleRequest} requestParameters Request parameters.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
* @memberof OnchainApiInterface
* @returns {Promise<DeployFungibleResponse>} A promise that resolves to a `DeployFungibleResponse` object
*
* For more information, refer to the [API documentation](https://docs.neynar.com/reference/deploy-fungible)
*
*/
deployFungible(requestParameters: OnchainApiDeployFungibleRequest, options?: RawAxiosRequestConfig): AxiosPromise<DeployFungibleResponse>;
/**
* Fetch a list of relevant owners for a specific FID. This usually shows on a fungible asset page as \"X, Y, Z and N others you know own this asset\".
* @summary Relevant owners
* @param {OnchainApiFetchRelevantFungibleOwnersRequest} requestParameters Request parameters.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
* @memberof OnchainApiInterface
* @returns {Promise<RelevantFungibleOwnersResponse>} A promise that resolves to a `RelevantFungibleOwnersResponse` object
*
* For more information, refer to the [API documentation](https://docs.neynar.com/reference/fetch-relevant-fungible-owners)
*
*/
fetchRelevantFungibleOwners(requestParameters: OnchainApiFetchRelevantFungibleOwnersRequest, options?: RawAxiosRequestConfig): AxiosPromise<RelevantFungibleOwnersResponse>;
/**
* Fetches the token balances of a user given their FID
* @summary Token balance
* @param {OnchainApiFetchUserBalanceRequest} requestParameters Request parameters.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
* @memberof OnchainApiInterface
* @returns {Promise<BalanceResponse>} A promise that resolves to a `BalanceResponse` object
*
* For more information, refer to the [API documentation](https://docs.neynar.com/reference/fetch-user-balance)
*
*/
fetchUserBalance(requestParameters: OnchainApiFetchUserBalanceRequest, options?: RawAxiosRequestConfig): AxiosPromise<BalanceResponse>;
}
/**
* Request parameters for deployFungible operation in OnchainApi.
* @export
* @interface OnchainApiDeployFungibleRequest
*/
export interface OnchainApiDeployFungibleRequest {
/**
* Ethereum address of the one who is creating the token
*
*
*
* @type {string}
* @memberof OnchainApiDeployFungible
*/
readonly owner: string;
/**
* Symbol/Ticker for the token
*
*
*
* @type {string}
* @memberof OnchainApiDeployFungible
*/
readonly symbol: string;
/**
* Name of the token
*
*
*
* @type {string}
* @memberof OnchainApiDeployFungible
*/
readonly name: string;
/**
*
*
*
*
* @type {DeployFungibleReqBodyMetadataMedia}
* @memberof OnchainApiDeployFungible
*/
readonly metadataMedia?: DeployFungibleReqBodyMetadataMedia;
/**
* Description of the token
*
*
*
* @type {string}
* @memberof OnchainApiDeployFungible
*/
readonly metadataDescription?: string;
/**
* Indicates if the token is NSFW (Not Safe For Work).
*
*
*
* @type {string}
* @memberof OnchainApiDeployFungible
*/
readonly metadataNsfw?: DeployFungibleMetadataNsfwEnum;
/**
* Website link related to the token
*
*
*
* @type {string}
* @memberof OnchainApiDeployFungible
*/
readonly metadataWebsiteLink?: string;
/**
* Twitter profile link
*
*
*
* @type {string}
* @memberof OnchainApiDeployFungible
*/
readonly metadataTwitter?: string;
/**
* Discord server link
*
*
*
* @type {string}
* @memberof OnchainApiDeployFungible
*/
readonly metadataDiscord?: string;
/**
* Telegram link
*
*
*
* @type {string}
* @memberof OnchainApiDeployFungible
*/
readonly metadataTelegram?: string;
/**
* Network/Chain name
*
*
*
* @type {string}
* @memberof OnchainApiDeployFungible
*/
readonly network?: DeployFungibleNetworkEnum;
/**
* Factory name - wow -> [wow.xyz](https://wow.xyz) - clanker -> [clanker.world](https://www.clanker.world)
*
*
*
* @type {string}
* @memberof OnchainApiDeployFungible
*/
readonly factory?: DeployFungibleFactoryEnum;
}
/**
* Request parameters for fetchRelevantFungibleOwners operation in OnchainApi.
* @export
* @interface OnchainApiFetchRelevantFungibleOwnersRequest
*/
export interface OnchainApiFetchRelevantFungibleOwnersRequest {
/**
* Contract address of the fungible asset
*
*
*
* @type {string}
* @memberof OnchainApiFetchRelevantFungibleOwners
*/
readonly contractAddress: string;
/**
* Comma separated list of networks to fetch balances for. Currently, only \"base\" is supported.
*
*
*
* @type {Array<Networks>}
* @memberof OnchainApiFetchRelevantFungibleOwners
*/
readonly networks: Array<Networks>;
/**
* The FID of the user to customize this response for. Providing this will also return a list of owners that respects this user\'s mutes and blocks and includes `viewer_context`.
*
*
*
* @type {number}
* @memberof OnchainApiFetchRelevantFungibleOwners
*/
readonly viewerFid: number;
}
/**
* Request parameters for fetchUserBalance operation in OnchainApi.
* @export
* @interface OnchainApiFetchUserBalanceRequest
*/
export interface OnchainApiFetchUserBalanceRequest {
/**
* FID of the user to fetch
*
*
*
* @type {number}
* @memberof OnchainApiFetchUserBalance
*/
readonly fid: number;
/**
* Comma separated list of networks to fetch balances for. Currently, only \"base\" is supported.
*
*
*
* @type {Array<Networks>}
* @memberof OnchainApiFetchUserBalance
*/
readonly networks: Array<Networks>;
}
/**
* OnchainApi - object-oriented interface
* @export
* @class OnchainApi
* @extends {BaseAPI}
*/
export declare class OnchainApi extends BaseAPI implements OnchainApiInterface {
/**
* Creates a new token. This is an allowlisted API, reach out if you want access.
* @summary Deploy fungible
* @param {OnchainApiDeployFungibleRequest} requestParameters Request parameters.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
* @memberof OnchainApi
* @returns {Promise<DeployFungibleResponse>} A promise that resolves to a `DeployFungibleResponse` object
*
* For more information, refer to the [API documentation](https://docs.neynar.com/reference/deploy-fungible)
*
*/
deployFungible(requestParameters: OnchainApiDeployFungibleRequest, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<DeployFungibleResponse, any>>;
/**
* Fetch a list of relevant owners for a specific FID. This usually shows on a fungible asset page as \"X, Y, Z and N others you know own this asset\".
* @summary Relevant owners
* @param {OnchainApiFetchRelevantFungibleOwnersRequest} requestParameters Request parameters.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
* @memberof OnchainApi
* @returns {Promise<RelevantFungibleOwnersResponse>} A promise that resolves to a `RelevantFungibleOwnersResponse` object
*
* For more information, refer to the [API documentation](https://docs.neynar.com/reference/fetch-relevant-fungible-owners)
*
*/
fetchRelevantFungibleOwners(requestParameters: OnchainApiFetchRelevantFungibleOwnersRequest, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<RelevantFungibleOwnersResponse, any>>;
/**
* Fetches the token balances of a user given their FID
* @summary Token balance
* @param {OnchainApiFetchUserBalanceRequest} requestParameters Request parameters.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
* @memberof OnchainApi
* @returns {Promise<BalanceResponse>} A promise that resolves to a `BalanceResponse` object
*
* For more information, refer to the [API documentation](https://docs.neynar.com/reference/fetch-user-balance)
*
*/
fetchUserBalance(requestParameters: OnchainApiFetchUserBalanceRequest, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<BalanceResponse, any>>;
}
/**
* @export
*/
export declare const DeployFungibleMetadataNsfwEnum: {
readonly True: "true";
readonly False: "false";
};
export type DeployFungibleMetadataNsfwEnum = typeof DeployFungibleMetadataNsfwEnum[keyof typeof DeployFungibleMetadataNsfwEnum];
/**
* @export
*/
export declare const DeployFungibleNetworkEnum: {
readonly Base: "base";
};
export type DeployFungibleNetworkEnum = typeof DeployFungibleNetworkEnum[keyof typeof DeployFungibleNetworkEnum];
/**
* @export
*/
export declare const DeployFungibleFactoryEnum: {
readonly Wow: "wow";
readonly Clanker: "clanker";
};
export type DeployFungibleFactoryEnum = typeof DeployFungibleFactoryEnum[keyof typeof DeployFungibleFactoryEnum];