import { ClientAffiliateActionEnum } from "../enums/client_affiliate_action_enum"; import { IClientAffiliateFlowConfigContextData } from "../flow-configs/client_affiliate_flow.config"; import { IUserEntity } from "../interface/user.entity.interface"; import { IRowActions } from "./interface/row-actions.interface"; import { UserEntityModel } from "./user.entity.model"; import { ClientAffiliateStatusEnum, EntityEnum, IClientAffiliateEntity, Nullable } from "../../entities"; import { IDtoValidationError, Result } from "../../misc"; import { DeleteDocumentDetails, DocumentFields } from "../../utils"; import { BaseEntityModel } from "./base.entity.model"; export declare class ClientAffiliateEntityModel extends BaseEntityModel implements IClientAffiliateEntity { id: number; name: string; address: string; details?: string; clientId: number; organizationId: number; primaryContactName: string; primaryContact: string; primaryEmail: string; zipCode: string; country: string; gstNumber?: Nullable; createdOn: number; updatedOn: number; createdBy: number; updatedBy: number; gstDocument?: Nullable; panNumber?: Nullable; panDocument?: Nullable; tanNumber?: Nullable; tanDocument?: Nullable; vendorCode?: Nullable; status: ClientAffiliateStatusEnum; static readonly CLIENT_AFFILIATE_ENTITY_DOCUMENT_TYPES: readonly ["pan", "tan", "gst"]; getRelationConfigs(): any; private get parsedAddress(); get addressLineOne(): string; get addressLineTwo(): string; get city(): string; get state(): string; static fromEntity(entity: IClientAffiliateEntity): ClientAffiliateEntityModel; static isValidGST(gstNumber: string | null): boolean; static isValidPan(panNumber: string | null): boolean; static isValidTan(tanNumber: string | null): boolean; static validateDocumentNoDocumentFile(data: DocumentFields, deleteDetails?: DeleteDocumentDetails): Result; get debitNoteAddress(): string; getNextStatus(currentUser: IUserEntity, action: ClientAffiliateActionEnum, clientAffiliateFlowConfigContextData: IClientAffiliateFlowConfigContextData): ClientAffiliateStatusEnum; getAvailableActions(currentUser: UserEntityModel, config?: { combinedActions?: Record; customLabels?: Partial>; }): IRowActions[]; getUpdateActionVisibility(currentUser: UserEntityModel): { [key: string]: () => boolean; }; }