import { MTableQueries } from "../../common-types";
import { AuthUserMst, CoreEntityAccessPassManagementBase, CoreEntityMapping, CoreEntityMappingBase, CoreUserTypeMapping } from "../../schema";
import { CoreUserAttributes } from "../../schema/core/core_user_attributes";
import { CoreUserContactAddresses, CoreUserContactAddressesBase } from "../../schema/core/core_user_contact_addresses";
import { CoreUserDocuments, CoreUserDocumentsBase } from "../../schema/core/core_user_documents";
import { CoreUserFamilyDetails, CoreUserFamilyDetailsBase } from "../../schema/core/core_user_family_details";
import { CoreUserRoleExceptions, CoreUserRoleExceptionsBase } from "../../schema/core/core_user_role_exceptions";
import { controllerResponse } from "../../utilities";
type AuthUserMstListErrorLogger = {
    [key in keyof AuthUserMstListPayload]: string;
};
type AuthUserMstGetByIdErrorLogger = {
    [key in keyof AuthUserMstGetByIdPayload]: string;
};
type AuthUserMstCreateErrorLogger = {
    [key in keyof AuthUserMstCreatePayload]: string;
};
declare class AuthUserMstListPayload extends MTableQueries {
    syenm_entity_id_syen?: string;
    syutm_user_type?: string;
    syutm_user_type_nin?: string[];
    syutm_user_type_in?: string[];
    constructor(init: AuthUserMstListPayload);
    Validate?(): Partial<AuthUserMstListErrorLogger>;
}
declare class AuthUserMstCreatePayload {
    auth_user_mst: AuthUserMst;
    core_user_contact_addresses: CoreUserContactAddresses[];
    core_user_documents: CoreUserDocuments[];
    core_user_family_details: CoreUserFamilyDetails[];
    core_user_attributes: CoreUserAttributes[];
    core_entity_mapping?: CoreEntityMapping[];
    core_user_role_exceptions?: CoreUserRoleExceptions[];
    core_user_type_mapping?: CoreUserTypeMapping;
    constructor(init?: Partial<AuthUserMstCreatePayload>);
    Validate?(): Partial<AuthUserMstCreateErrorLogger>;
}
declare class AuthUserMstGetByIdPayload {
    user_id: string;
    syenm_entity_id_syen?: string;
    constructor(init?: Partial<AuthUserMstGetByIdPayload>);
    Validate?(): Partial<AuthUserMstGetByIdErrorLogger>;
}
interface authUserMstListControllerResponse extends controllerResponse {
    data?: AuthUserMst[];
}
interface authUserMstCreateControllerResponse extends controllerResponse {
    data?: AuthUserMst;
}
interface authUserMstGetByIdControllerResponse extends controllerResponse {
    data?: AuthUserMstGetByIdData;
}
declare class AuthUserMstGetByIdData {
    user_id?: string;
    syenm_entity_id_syen?: string;
    auth_user_mst?: AuthUserMst;
    core_user_contact_addresses?: AuthUserCoreUserContactAddresses[];
    core_user_documents?: AuthUserCoreUserDocuments[];
    core_user_family_details?: AuthUserCoreUserFamilyDetails[];
    core_user_attributes?: CoreUserAttributes[];
    core_entity_mapping?: AuthUserCoreEntityMapping[];
    core_user_role_exceptions?: CoreUserRoleExceptionsMapping[];
    core_user_type_mapping?: CoreUserTypeMapping[];
}
declare class CoreUserRoleExceptionsMapping extends CoreUserRoleExceptionsBase {
    syusrex_user_id_user?: {
        _id: string;
        user_fullname: string;
    };
    syusrex_role_id_syusrol?: {
        _id: string;
        syusrol_role_name: string;
    };
    syusrex_role_permissions_id_sygms?: {
        _id: string;
        sygms_title: string;
    };
    syusrex_menu_id_syme?: {
        _id: string;
        syme_title: string;
    };
}
declare class AuthUserCoreEntityMapping extends CoreEntityMappingBase {
    syenm_entity_id_syen?: {
        _id: string;
        syen_name: string;
    };
    syenm_designation_id_sydsg?: {
        _id: string;
        sydsg_name: string;
    };
    syenm_role_id_syusrol?: {
        _id: string;
        syusrol_name: string;
    };
    syenm_department_id_sydept?: {
        _id: string;
        sydept_name: string;
    };
}
declare class AuthUserCoreUserContactAddresses extends CoreUserContactAddressesBase {
    sycad_address_type_id_sygms?: {
        _id: string;
        sygms_name: string;
    };
    sycad_contact_person_syfdl?: {
        _id: string;
        syfdl_first_name: string;
    };
    sycad_contact_pin_sypin?: {
        _id: string;
        sypin_pincode: number;
    };
    sycad_contact_country_syctr?: {
        _id: string;
        syctr_country_iso_name: string;
    };
    core_entity_access_pass_management?: CoreEntityAccessPassManagementBase;
}
declare class AuthUserCoreUserDocuments extends CoreUserDocumentsBase {
    syusd_document_type_id_sygms?: {
        _id?: string;
        sygms_name?: string;
    };
    syusd_photo_group_id_cyfm?: {
        _id?: string;
        cyfm_name?: string;
    };
    syusd_doc_verification_status_id_sygms?: {
        _id?: string;
        sygms_name?: string;
    };
    syusd_doc_kyc_status_id_sygms?: {
        _id?: string;
        sygms_name?: string;
    };
    core_entity_access_pass_management?: CoreEntityAccessPassManagementBase;
}
declare class AuthUserCoreUserFamilyDetails extends CoreUserFamilyDetailsBase {
    syfdl_family_member_id_user?: {
        _id?: string;
        user_fullname?: string;
    };
    syfdl_relationship_id_sygms?: {
        _id?: string;
        sygms_name?: string;
    };
    syfdl_blood_group_sygms?: {
        _id?: string;
        sygms_name?: string;
    };
}
export { AuthUserMstListErrorLogger, //interface
AuthUserMstListPayload, // model
authUserMstListControllerResponse, AuthUserMstCreatePayload, authUserMstCreateControllerResponse, AuthUserMstGetByIdPayload, authUserMstGetByIdControllerResponse, AuthUserMstGetByIdErrorLogger, AuthUserMstCreateErrorLogger, AuthUserMstGetByIdData, AuthUserCoreEntityMapping, AuthUserCoreUserContactAddresses, AuthUserCoreUserFamilyDetails, AuthUserCoreUserDocuments, CoreUserRoleExceptionsMapping };
