amocrm-client
Version:
JS Library for AmoCRM
55 lines (54 loc) • 2.33 kB
TypeScript
import { TConstructor } from "../../types";
import { IRequestOptions } from "../../interfaces/common";
import { ICompanyFactory } from "../factories/CompanyFactory";
import { IResourceEntity } from "../../interfaces/api";
import { CompanyCriteria, ICompanyAttributes } from "../../interfaces/company";
export interface ICompany extends IResourceEntity<ICompanyFactory>, ICompanyAttributes {
/**
* Добавляет сущность на портал AmoCRM
* @example
* ```ts
* const company = new client.Company({
* name: "Walter White"
* });
* await company.create();
* ```
* @example
* ```ts
* const company = new client.Company;
* company.name = "Walter White";
* await company.create();
* ```
* @returns ссылка на созданную сущность
* */
create(options?: IRequestOptions): Promise<ICompany>;
/**
* Обновляет сущность на портале AmoCRM.
* @param options настройки запроса и обработки результата
* @example
* ```ts
* const company = await client.companies.getById(123);
* company.name = "Walter White";
* await company.update();
* ```
* @returns ссылка на обновлённую сущность
* */
update(options?: IRequestOptions): Promise<ICompany>;
/**
* Создаёт или сохраняет сущность, в зависимости от результата {@link isNew()}
* @param options настройки запроса и обработки результата
* */
save(options?: IRequestOptions): Promise<ICompany>;
/**
* Получает содержимое сущности на портале
* @param criteria фильтр для уточнения результатов запроса
* @param options настройки запроса и обработки результата
* @example
* ```ts
* const company = new client.Company({ id: 123 });
* await company.fetch();
* ```
* */
fetch(criteria?: CompanyCriteria, options?: IRequestOptions): Promise<ICompany>;
}
export declare const Company: TConstructor<ICompany>;