/** * Pipedrive API v1 * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * The version of the OpenAPI document: 1.0.0 * * * 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 { AxiosInstance } from 'axios'; import { RequestArgs, BaseAPI } from '../base'; import { AddNewFollowerResponse } from '../models'; import { AddProductFollowerRequest } from '../models'; import { DeleteProductFollowerResponse } from '../models'; import { GetAssociatedDealsResponse } from '../models'; import { GetAssociatedProductFilesResponse } from '../models'; import { GetProductFollowersResponse } from '../models'; import { UserIds } from '../models'; /** * ProductsApi - axios parameter creator * @export */ export declare const ProductsApiAxiosParamCreator: (configuration?: Configuration) => { /** * Adds a follower to a product. * @summary Add a follower to a product * @param {number} id The ID of the product * @param {AddProductFollowerRequest} [AddProductFollowerRequest] * @throws {RequiredError} */ addProductFollower: (id: number, AddProductFollowerRequest?: AddProductFollowerRequest) => Promise; /** * Deletes a follower from a product. * @summary Delete a follower from a product * @param {number} id The ID of the product * @param {number} follower_id The ID of the relationship between the follower and the product * @throws {RequiredError} */ deleteProductFollower: (id: number, follower_id: number) => Promise; /** * Returns data about deals that have a product attached to it. * @summary Get deals where a product is attached to * @param {number} id The ID of the product * @param {number} [start] Pagination start * @param {number} [limit] Items shown per page * @param {'open' | 'won' | 'lost' | 'deleted' | 'all_not_deleted'} [status] Only fetch deals with a specific status. If omitted, all not deleted deals are returned. If set to deleted, deals that have been deleted up to 30 days ago will be included. * @throws {RequiredError} */ getProductDeals: (id: number, start?: number, limit?: number, status?: 'open' | 'won' | 'lost' | 'deleted' | 'all_not_deleted') => Promise; /** * Lists files associated with a product. * @summary List files attached to a product * @param {number} id The ID of the product * @param {number} [start] Pagination start * @param {number} [limit] Items shown per page. Please note that a maximum value of 100 is allowed. * @param {string} [sort] Supported fields: `id`, `update_time` * @throws {RequiredError} */ getProductFiles: (id: number, start?: number, limit?: number, sort?: string) => Promise; /** * Lists the followers of a product. * @summary List followers of a product * @param {number} id The ID of the product * @param {number} [start] Pagination start * @param {number} [limit] Items shown per page * @throws {RequiredError} */ getProductFollowers: (id: number, start?: number, limit?: number) => Promise; /** * Lists users permitted to access a product. * @summary List permitted users * @param {number} id The ID of the product * @throws {RequiredError} */ getProductUsers: (id: number) => Promise; }; /** * ProductsApi - functional programming interface * @export */ export declare const ProductsApiFp: (configuration?: Configuration) => { /** * Adds a follower to a product. * @summary Add a follower to a product * @param {number} id The ID of the product * @param {AddProductFollowerRequest} [AddProductFollowerRequest] * @throws {RequiredError} */ addProductFollower(id: number, AddProductFollowerRequest?: AddProductFollowerRequest): Promise<(axios?: AxiosInstance, basePath?: string) => Promise>; /** * Deletes a follower from a product. * @summary Delete a follower from a product * @param {number} id The ID of the product * @param {number} follower_id The ID of the relationship between the follower and the product * @throws {RequiredError} */ deleteProductFollower(id: number, follower_id: number): Promise<(axios?: AxiosInstance, basePath?: string) => Promise>; /** * Returns data about deals that have a product attached to it. * @summary Get deals where a product is attached to * @param {number} id The ID of the product * @param {number} [start] Pagination start * @param {number} [limit] Items shown per page * @param {'open' | 'won' | 'lost' | 'deleted' | 'all_not_deleted'} [status] Only fetch deals with a specific status. If omitted, all not deleted deals are returned. If set to deleted, deals that have been deleted up to 30 days ago will be included. * @throws {RequiredError} */ getProductDeals(id: number, start?: number, limit?: number, status?: 'open' | 'won' | 'lost' | 'deleted' | 'all_not_deleted'): Promise<(axios?: AxiosInstance, basePath?: string) => Promise>; /** * Lists files associated with a product. * @summary List files attached to a product * @param {number} id The ID of the product * @param {number} [start] Pagination start * @param {number} [limit] Items shown per page. Please note that a maximum value of 100 is allowed. * @param {string} [sort] Supported fields: `id`, `update_time` * @throws {RequiredError} */ getProductFiles(id: number, start?: number, limit?: number, sort?: string): Promise<(axios?: AxiosInstance, basePath?: string) => Promise>; /** * Lists the followers of a product. * @summary List followers of a product * @param {number} id The ID of the product * @param {number} [start] Pagination start * @param {number} [limit] Items shown per page * @throws {RequiredError} */ getProductFollowers(id: number, start?: number, limit?: number): Promise<(axios?: AxiosInstance, basePath?: string) => Promise>; /** * Lists users permitted to access a product. * @summary List permitted users * @param {number} id The ID of the product * @throws {RequiredError} */ getProductUsers(id: number): Promise<(axios?: AxiosInstance, basePath?: string) => Promise>; }; /** * ProductsApi - factory interface * @export */ export declare const ProductsApiFactory: (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) => { /** * Adds a follower to a product. * @summary Add a follower to a product * @param {ProductsApiAddProductFollowerRequest} requestParameters Request parameters. * @throws {RequiredError} */ addProductFollower(requestParameters: ProductsApiAddProductFollowerRequest): Promise; /** * Deletes a follower from a product. * @summary Delete a follower from a product * @param {ProductsApiDeleteProductFollowerRequest} requestParameters Request parameters. * @throws {RequiredError} */ deleteProductFollower(requestParameters: ProductsApiDeleteProductFollowerRequest): Promise; /** * Returns data about deals that have a product attached to it. * @summary Get deals where a product is attached to * @param {ProductsApiGetProductDealsRequest} requestParameters Request parameters. * @throws {RequiredError} */ getProductDeals(requestParameters: ProductsApiGetProductDealsRequest): Promise; /** * Lists files associated with a product. * @summary List files attached to a product * @param {ProductsApiGetProductFilesRequest} requestParameters Request parameters. * @throws {RequiredError} */ getProductFiles(requestParameters: ProductsApiGetProductFilesRequest): Promise; /** * Lists the followers of a product. * @summary List followers of a product * @param {ProductsApiGetProductFollowersRequest} requestParameters Request parameters. * @throws {RequiredError} */ getProductFollowers(requestParameters: ProductsApiGetProductFollowersRequest): Promise; /** * Lists users permitted to access a product. * @summary List permitted users * @param {ProductsApiGetProductUsersRequest} requestParameters Request parameters. * @throws {RequiredError} */ getProductUsers(requestParameters: ProductsApiGetProductUsersRequest): Promise; }; /** * Request parameters for addProductFollower operation in ProductsApi. * @export * @interface ProductsApiAddProductFollowerRequest */ export interface ProductsApiAddProductFollowerRequest { /** * The ID of the product * @type {number} * @memberof ProductsApiAddProductFollower */ readonly id: number; /** * * @type {AddProductFollowerRequest} * @memberof ProductsApiAddProductFollower */ readonly AddProductFollowerRequest?: AddProductFollowerRequest; } /** * Request parameters for deleteProductFollower operation in ProductsApi. * @export * @interface ProductsApiDeleteProductFollowerRequest */ export interface ProductsApiDeleteProductFollowerRequest { /** * The ID of the product * @type {number} * @memberof ProductsApiDeleteProductFollower */ readonly id: number; /** * The ID of the relationship between the follower and the product * @type {number} * @memberof ProductsApiDeleteProductFollower */ readonly follower_id: number; } /** * Request parameters for getProductDeals operation in ProductsApi. * @export * @interface ProductsApiGetProductDealsRequest */ export interface ProductsApiGetProductDealsRequest { /** * The ID of the product * @type {number} * @memberof ProductsApiGetProductDeals */ readonly id: number; /** * Pagination start * @type {number} * @memberof ProductsApiGetProductDeals */ readonly start?: number; /** * Items shown per page * @type {number} * @memberof ProductsApiGetProductDeals */ readonly limit?: number; /** * Only fetch deals with a specific status. If omitted, all not deleted deals are returned. If set to deleted, deals that have been deleted up to 30 days ago will be included. * @type {'open' | 'won' | 'lost' | 'deleted' | 'all_not_deleted'} * @memberof ProductsApiGetProductDeals */ readonly status?: 'open' | 'won' | 'lost' | 'deleted' | 'all_not_deleted'; } /** * Request parameters for getProductFiles operation in ProductsApi. * @export * @interface ProductsApiGetProductFilesRequest */ export interface ProductsApiGetProductFilesRequest { /** * The ID of the product * @type {number} * @memberof ProductsApiGetProductFiles */ readonly id: number; /** * Pagination start * @type {number} * @memberof ProductsApiGetProductFiles */ readonly start?: number; /** * Items shown per page. Please note that a maximum value of 100 is allowed. * @type {number} * @memberof ProductsApiGetProductFiles */ readonly limit?: number; /** * Supported fields: `id`, `update_time` * @type {string} * @memberof ProductsApiGetProductFiles */ readonly sort?: string; } /** * Request parameters for getProductFollowers operation in ProductsApi. * @export * @interface ProductsApiGetProductFollowersRequest */ export interface ProductsApiGetProductFollowersRequest { /** * The ID of the product * @type {number} * @memberof ProductsApiGetProductFollowers */ readonly id: number; /** * Pagination start * @type {number} * @memberof ProductsApiGetProductFollowers */ readonly start?: number; /** * Items shown per page * @type {number} * @memberof ProductsApiGetProductFollowers */ readonly limit?: number; } /** * Request parameters for getProductUsers operation in ProductsApi. * @export * @interface ProductsApiGetProductUsersRequest */ export interface ProductsApiGetProductUsersRequest { /** * The ID of the product * @type {number} * @memberof ProductsApiGetProductUsers */ readonly id: number; } /** * ProductsApi - object-oriented interface * @export * @class ProductsApi * @extends {BaseAPI} */ export declare class ProductsApi extends BaseAPI { /** * Adds a follower to a product. * @summary Add a follower to a product * @param {ProductsApiAddProductFollowerRequest} requestParameters Request parameters. * @throws {RequiredError} * @memberof ProductsApi */ addProductFollower(requestParameters: ProductsApiAddProductFollowerRequest): Promise; /** * Deletes a follower from a product. * @summary Delete a follower from a product * @param {ProductsApiDeleteProductFollowerRequest} requestParameters Request parameters. * @throws {RequiredError} * @memberof ProductsApi */ deleteProductFollower(requestParameters: ProductsApiDeleteProductFollowerRequest): Promise; /** * Returns data about deals that have a product attached to it. * @summary Get deals where a product is attached to * @param {ProductsApiGetProductDealsRequest} requestParameters Request parameters. * @throws {RequiredError} * @memberof ProductsApi */ getProductDeals(requestParameters: ProductsApiGetProductDealsRequest): Promise; /** * Lists files associated with a product. * @summary List files attached to a product * @param {ProductsApiGetProductFilesRequest} requestParameters Request parameters. * @throws {RequiredError} * @memberof ProductsApi */ getProductFiles(requestParameters: ProductsApiGetProductFilesRequest): Promise; /** * Lists the followers of a product. * @summary List followers of a product * @param {ProductsApiGetProductFollowersRequest} requestParameters Request parameters. * @throws {RequiredError} * @memberof ProductsApi */ getProductFollowers(requestParameters: ProductsApiGetProductFollowersRequest): Promise; /** * Lists users permitted to access a product. * @summary List permitted users * @param {ProductsApiGetProductUsersRequest} requestParameters Request parameters. * @throws {RequiredError} * @memberof ProductsApi */ getProductUsers(requestParameters: ProductsApiGetProductUsersRequest): Promise; }