amocrm-client
Version:
JS Library for AmoCRM
45 lines (44 loc) • 2.07 kB
TypeScript
import { ICriteria, IEntityAttributes, IResourceCollection } from "./api";
import { CustomFieldFilter, Moment, RangeFilter } from "./common";
import { ICustomFieldValue } from "./custom_field";
declare type CompanyWithString = "catalog_elements" | "leads" | "customers" | "contacts";
export declare type CompanyWith = Array<CompanyWithString> | CompanyWithString;
export declare type CompanyCriteria = Partial<ICriteria<Partial<ICompanyFilter>, CompanyWith>>;
export declare type EmbeddedCompany = Partial<ICompanyAttributes>;
export declare type CompanyCreateCriteria = Partial<Omit<ICompanyAttributes, "id" | "_links" | "account_id" | "is_deleted" | "group_id">>;
export declare type CompanyCreateResult = Omit<IEntityAttributes, "account_id">;
export declare type CompanyUpdateCriteria = CompanyCreateCriteria & Pick<ICompanyAttributes, "id">;
export declare type CompanyUpdateResult = Pick<ICompanyAttributes, "id" | "name" | "updated_at" | "_links">;
export interface ICompanyFilter {
id: number | number[];
name: string | string[];
created_by: number | number[];
updated_by: number | number[];
responsible_user_id: number | number[];
created_at: RangeFilter;
updated_at: RangeFilter;
closed_at: RangeFilter;
closest_task_at: RangeFilter;
custom_fields_values: CustomFieldFilter[];
}
export interface ICompanyAttributes extends IEntityAttributes {
name: string;
responsible_user_id: number;
group_id: number;
created_by: number;
updated_by: number;
created_at: Date;
updated_at: Date;
closest_task_at: number;
is_deleted: number;
custom_fields_values: ICustomFieldValue[] | null;
_embedded: ICompanyEmbedded;
}
export interface ICompanyEmbedded {
tags: IResourceCollection<IEntityAttributes>;
leads?: IResourceCollection<IEntityAttributes>;
customers?: IResourceCollection<IEntityAttributes>;
contacts?: IResourceCollection<IEntityAttributes>;
catalog_elements?: IResourceCollection<IEntityAttributes>;
}
export {};