/**
 * Hawksight API
 * No description provided (generated by Swagger Codegen https://github.com/swagger-api/swagger-codegen)
 *
 * OpenAPI spec version: 0.0.1
 *
 *
 * NOTE: This class is auto generated by the swagger code generator program.
 * https://github.com/swagger-api/swagger-codegen.git
 * Do not edit the class manually.
 */
import { AxiosResponse, AxiosInstance, AxiosRequestConfig } from 'axios';
import { Configuration } from '../configuration';
import { RequestArgs, BaseAPI } from '../base';
import { HawksightPool } from '../models';
import { HawksightPoolResponse } from '../models';
import { InlineResponse200 } from '../models';
import { InlineResponse2001 } from '../models';
import { MeteoraPosition } from '../models';
import { RegisterBody } from '../models';
import { TransactionMetadata } from '../models';
import { UserPortfolio } from '../models';
/**
 * GeneralEndpointsApi - axios parameter creator
 * @export
 */
export declare const GeneralEndpointsApiAxiosParamCreator: (configuration?: Configuration) => {
    /**
     * Returns all Meteora positions on Hawksight ever opened, including those already closed.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    allTimeMeteoraPositionsGet: (options?: AxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * Returns all closed positions from a user.
     * @param {string} [user] User to search
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    hawksightClosedPositionsGet: (user?: string, options?: AxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * Returns all pools integrated by Hawksight.
     * @param {string} user Position to search
     * @param {string} pool Position to search
     * @param {string} positions Position to search
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    hawksightPositionAnalyticsGet: (user: string, pool: string, positions: string, options?: AxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * Return info about the specified pool.
     * @param {string} pairAddress The address of the pool to query.
     * @param {string} [protocol] Either meteora or orca.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    poolGet: (pairAddress: string, protocol?: string, options?: AxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * Returns all pools integrated by Hawksight.
     * @param {string} [hash] Optional hash parameter
     * @param {number} [page] Page number for pagination
     * @param {number} [limit] Number of items per page
     * @param {number} [skip] Number of items to skip
     * @param {string} [sortedBy] Field to sort the results by
     * @param {string} [orderBy] Order of sorting (ascending or descending)
     * @param {string} [keyword] Optional keyword for filtering pools
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    pools2Get: (hash?: string, page?: number, limit?: number, skip?: number, sortedBy?: string, orderBy?: string, keyword?: string, options?: AxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * Returns all pools integrated by Hawksight.
     * @param {string} [hash] Optional hash parameter
     * @param {number} [page] Page number for pagination
     * @param {number} [limit] Number of items per page
     * @param {number} [skip] Number of items to skip
     * @param {string} [sortedBy] Field to sort the results by
     * @param {string} [orderBy] Order of sorting (ascending or descending)
     * @param {string} [keyword] Optional keyword for filtering pools
     * @param {string} [protocol] Either meteora or orca.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    poolsGet: (hash?: string, page?: number, limit?: number, skip?: number, sortedBy?: string, orderBy?: string, keyword?: string, protocol?: string, options?: AxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * Retrieves the user's portfolio based on the provided wallet and optional pool address.
     * @param {string} wallet The unique identifier for the user&#x27;s wallet.
     * @param {string} [pool] The pool address. If not specified, uses default. See /pools endpoint for available pools.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    portfolioGet: (wallet: string, pool?: string, options?: AxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * Returns all pools integrated by Hawksight.
     * @param {string} position Position to search
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    positionAnalyticsGet: (position: string, options?: AxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * Generates a transaction to create a user's program derived address (PDA).
     * @param {RegisterBody} body
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    registerPost: (body: RegisterBody, options?: AxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * Returns a token supported by Hawksight.
     * @param {string} address The address of the token.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    tokenGet: (address: string, options?: AxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * Returns all tokens supported by Hawksight.
     * @param {string} [keyword] Keyword for search
     * @param {number} [limit] Max number of results returned
     * @param {boolean} [all] show all (bypass limit)
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    tokensGet: (keyword?: string, limit?: number, all?: boolean, options?: AxiosRequestConfig) => Promise<RequestArgs>;
};
/**
 * GeneralEndpointsApi - functional programming interface
 * @export
 */
export declare const GeneralEndpointsApiFp: (configuration?: Configuration) => {
    /**
     * Returns all Meteora positions on Hawksight ever opened, including those already closed.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    allTimeMeteoraPositionsGet(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => Promise<AxiosResponse<MeteoraPosition>>>;
    /**
     * Returns all closed positions from a user.
     * @param {string} [user] User to search
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    hawksightClosedPositionsGet(user?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => Promise<AxiosResponse<Array<InlineResponse2001>>>>;
    /**
     * Returns all pools integrated by Hawksight.
     * @param {string} user Position to search
     * @param {string} pool Position to search
     * @param {string} positions Position to search
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    hawksightPositionAnalyticsGet(user: string, pool: string, positions: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => Promise<AxiosResponse<void>>>;
    /**
     * Return info about the specified pool.
     * @param {string} pairAddress The address of the pool to query.
     * @param {string} [protocol] Either meteora or orca.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    poolGet(pairAddress: string, protocol?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => Promise<AxiosResponse<HawksightPoolResponse>>>;
    /**
     * Returns all pools integrated by Hawksight.
     * @param {string} [hash] Optional hash parameter
     * @param {number} [page] Page number for pagination
     * @param {number} [limit] Number of items per page
     * @param {number} [skip] Number of items to skip
     * @param {string} [sortedBy] Field to sort the results by
     * @param {string} [orderBy] Order of sorting (ascending or descending)
     * @param {string} [keyword] Optional keyword for filtering pools
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    pools2Get(hash?: string, page?: number, limit?: number, skip?: number, sortedBy?: string, orderBy?: string, keyword?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => Promise<AxiosResponse<Array<HawksightPool>>>>;
    /**
     * Returns all pools integrated by Hawksight.
     * @param {string} [hash] Optional hash parameter
     * @param {number} [page] Page number for pagination
     * @param {number} [limit] Number of items per page
     * @param {number} [skip] Number of items to skip
     * @param {string} [sortedBy] Field to sort the results by
     * @param {string} [orderBy] Order of sorting (ascending or descending)
     * @param {string} [keyword] Optional keyword for filtering pools
     * @param {string} [protocol] Either meteora or orca.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    poolsGet(hash?: string, page?: number, limit?: number, skip?: number, sortedBy?: string, orderBy?: string, keyword?: string, protocol?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => Promise<AxiosResponse<Array<HawksightPool>>>>;
    /**
     * Retrieves the user's portfolio based on the provided wallet and optional pool address.
     * @param {string} wallet The unique identifier for the user&#x27;s wallet.
     * @param {string} [pool] The pool address. If not specified, uses default. See /pools endpoint for available pools.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    portfolioGet(wallet: string, pool?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => Promise<AxiosResponse<UserPortfolio>>>;
    /**
     * Returns all pools integrated by Hawksight.
     * @param {string} position Position to search
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    positionAnalyticsGet(position: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => Promise<AxiosResponse<void>>>;
    /**
     * Generates a transaction to create a user's program derived address (PDA).
     * @param {RegisterBody} body
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    registerPost(body: RegisterBody, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => Promise<AxiosResponse<TransactionMetadata>>>;
    /**
     * Returns a token supported by Hawksight.
     * @param {string} address The address of the token.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    tokenGet(address: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => Promise<AxiosResponse<InlineResponse200>>>;
    /**
     * Returns all tokens supported by Hawksight.
     * @param {string} [keyword] Keyword for search
     * @param {number} [limit] Max number of results returned
     * @param {boolean} [all] show all (bypass limit)
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    tokensGet(keyword?: string, limit?: number, all?: boolean, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => Promise<AxiosResponse<Array<InlineResponse200>>>>;
};
/**
 * GeneralEndpointsApi - factory interface
 * @export
 */
export declare const GeneralEndpointsApiFactory: (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) => {
    /**
     * Returns all Meteora positions on Hawksight ever opened, including those already closed.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    allTimeMeteoraPositionsGet(options?: AxiosRequestConfig): Promise<AxiosResponse<MeteoraPosition>>;
    /**
     * Returns all closed positions from a user.
     * @param {string} [user] User to search
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    hawksightClosedPositionsGet(user?: string, options?: AxiosRequestConfig): Promise<AxiosResponse<Array<InlineResponse2001>>>;
    /**
     * Returns all pools integrated by Hawksight.
     * @param {string} user Position to search
     * @param {string} pool Position to search
     * @param {string} positions Position to search
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    hawksightPositionAnalyticsGet(user: string, pool: string, positions: string, options?: AxiosRequestConfig): Promise<AxiosResponse<void>>;
    /**
     * Return info about the specified pool.
     * @param {string} pairAddress The address of the pool to query.
     * @param {string} [protocol] Either meteora or orca.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    poolGet(pairAddress: string, protocol?: string, options?: AxiosRequestConfig): Promise<AxiosResponse<HawksightPoolResponse>>;
    /**
     * Returns all pools integrated by Hawksight.
     * @param {string} [hash] Optional hash parameter
     * @param {number} [page] Page number for pagination
     * @param {number} [limit] Number of items per page
     * @param {number} [skip] Number of items to skip
     * @param {string} [sortedBy] Field to sort the results by
     * @param {string} [orderBy] Order of sorting (ascending or descending)
     * @param {string} [keyword] Optional keyword for filtering pools
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    pools2Get(hash?: string, page?: number, limit?: number, skip?: number, sortedBy?: string, orderBy?: string, keyword?: string, options?: AxiosRequestConfig): Promise<AxiosResponse<Array<HawksightPool>>>;
    /**
     * Returns all pools integrated by Hawksight.
     * @param {string} [hash] Optional hash parameter
     * @param {number} [page] Page number for pagination
     * @param {number} [limit] Number of items per page
     * @param {number} [skip] Number of items to skip
     * @param {string} [sortedBy] Field to sort the results by
     * @param {string} [orderBy] Order of sorting (ascending or descending)
     * @param {string} [keyword] Optional keyword for filtering pools
     * @param {string} [protocol] Either meteora or orca.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    poolsGet(hash?: string, page?: number, limit?: number, skip?: number, sortedBy?: string, orderBy?: string, keyword?: string, protocol?: string, options?: AxiosRequestConfig): Promise<AxiosResponse<Array<HawksightPool>>>;
    /**
     * Retrieves the user's portfolio based on the provided wallet and optional pool address.
     * @param {string} wallet The unique identifier for the user&#x27;s wallet.
     * @param {string} [pool] The pool address. If not specified, uses default. See /pools endpoint for available pools.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    portfolioGet(wallet: string, pool?: string, options?: AxiosRequestConfig): Promise<AxiosResponse<UserPortfolio>>;
    /**
     * Returns all pools integrated by Hawksight.
     * @param {string} position Position to search
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    positionAnalyticsGet(position: string, options?: AxiosRequestConfig): Promise<AxiosResponse<void>>;
    /**
     * Generates a transaction to create a user's program derived address (PDA).
     * @param {RegisterBody} body
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    registerPost(body: RegisterBody, options?: AxiosRequestConfig): Promise<AxiosResponse<TransactionMetadata>>;
    /**
     * Returns a token supported by Hawksight.
     * @param {string} address The address of the token.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    tokenGet(address: string, options?: AxiosRequestConfig): Promise<AxiosResponse<InlineResponse200>>;
    /**
     * Returns all tokens supported by Hawksight.
     * @param {string} [keyword] Keyword for search
     * @param {number} [limit] Max number of results returned
     * @param {boolean} [all] show all (bypass limit)
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    tokensGet(keyword?: string, limit?: number, all?: boolean, options?: AxiosRequestConfig): Promise<AxiosResponse<Array<InlineResponse200>>>;
};
/**
 * GeneralEndpointsApi - object-oriented interface
 * @export
 * @class GeneralEndpointsApi
 * @extends {BaseAPI}
 */
export declare class GeneralEndpointsApi extends BaseAPI {
    /**
     * Returns all Meteora positions on Hawksight ever opened, including those already closed.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof GeneralEndpointsApi
     */
    allTimeMeteoraPositionsGet(options?: AxiosRequestConfig): Promise<AxiosResponse<MeteoraPosition>>;
    /**
     * Returns all closed positions from a user.
     * @param {string} [user] User to search
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof GeneralEndpointsApi
     */
    hawksightClosedPositionsGet(user?: string, options?: AxiosRequestConfig): Promise<AxiosResponse<Array<InlineResponse2001>>>;
    /**
     * Returns all pools integrated by Hawksight.
     * @param {string} user Position to search
     * @param {string} pool Position to search
     * @param {string} positions Position to search
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof GeneralEndpointsApi
     */
    hawksightPositionAnalyticsGet(user: string, pool: string, positions: string, options?: AxiosRequestConfig): Promise<AxiosResponse<void>>;
    /**
     * Return info about the specified pool.
     * @param {string} pairAddress The address of the pool to query.
     * @param {string} [protocol] Either meteora or orca.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof GeneralEndpointsApi
     */
    poolGet(pairAddress: string, protocol?: string, options?: AxiosRequestConfig): Promise<AxiosResponse<HawksightPoolResponse>>;
    /**
     * Returns all pools integrated by Hawksight.
     * @param {string} [hash] Optional hash parameter
     * @param {number} [page] Page number for pagination
     * @param {number} [limit] Number of items per page
     * @param {number} [skip] Number of items to skip
     * @param {string} [sortedBy] Field to sort the results by
     * @param {string} [orderBy] Order of sorting (ascending or descending)
     * @param {string} [keyword] Optional keyword for filtering pools
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof GeneralEndpointsApi
     */
    pools2Get(hash?: string, page?: number, limit?: number, skip?: number, sortedBy?: string, orderBy?: string, keyword?: string, options?: AxiosRequestConfig): Promise<AxiosResponse<Array<HawksightPool>>>;
    /**
     * Returns all pools integrated by Hawksight.
     * @param {string} [hash] Optional hash parameter
     * @param {number} [page] Page number for pagination
     * @param {number} [limit] Number of items per page
     * @param {number} [skip] Number of items to skip
     * @param {string} [sortedBy] Field to sort the results by
     * @param {string} [orderBy] Order of sorting (ascending or descending)
     * @param {string} [keyword] Optional keyword for filtering pools
     * @param {string} [protocol] Either meteora or orca.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof GeneralEndpointsApi
     */
    poolsGet(hash?: string, page?: number, limit?: number, skip?: number, sortedBy?: string, orderBy?: string, keyword?: string, protocol?: string, options?: AxiosRequestConfig): Promise<AxiosResponse<Array<HawksightPool>>>;
    /**
     * Retrieves the user's portfolio based on the provided wallet and optional pool address.
     * @param {string} wallet The unique identifier for the user&#x27;s wallet.
     * @param {string} [pool] The pool address. If not specified, uses default. See /pools endpoint for available pools.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof GeneralEndpointsApi
     */
    portfolioGet(wallet: string, pool?: string, options?: AxiosRequestConfig): Promise<AxiosResponse<UserPortfolio>>;
    /**
     * Returns all pools integrated by Hawksight.
     * @param {string} position Position to search
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof GeneralEndpointsApi
     */
    positionAnalyticsGet(position: string, options?: AxiosRequestConfig): Promise<AxiosResponse<void>>;
    /**
     * Generates a transaction to create a user's program derived address (PDA).
     * @param {RegisterBody} body
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof GeneralEndpointsApi
     */
    registerPost(body: RegisterBody, options?: AxiosRequestConfig): Promise<AxiosResponse<TransactionMetadata>>;
    /**
     * Returns a token supported by Hawksight.
     * @param {string} address The address of the token.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof GeneralEndpointsApi
     */
    tokenGet(address: string, options?: AxiosRequestConfig): Promise<AxiosResponse<InlineResponse200>>;
    /**
     * Returns all tokens supported by Hawksight.
     * @param {string} [keyword] Keyword for search
     * @param {number} [limit] Max number of results returned
     * @param {boolean} [all] show all (bypass limit)
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof GeneralEndpointsApi
     */
    tokensGet(keyword?: string, limit?: number, all?: boolean, options?: AxiosRequestConfig): Promise<AxiosResponse<Array<InlineResponse200>>>;
}
