import type { DecisionMakerType } from '../../../../core/models/api/decision-maker-type';
import type { ExistingLegalEntity } from '../../../../core/models/api/legal-entity';
import type { LegalEntityAssociation, LegalRepresentativeRelationshipType } from '../../../../core/models/api/legal-entity-association';
import type { BaseInnerFormProps } from '../../../../hooks/useForm/types';
import type { NameSchema } from '../../../Shared/fields/Name/types';
import type { ContactDetailsSchema } from '../../../Shared/forms/ContactDetails/types';
import type { TaskType } from '../../../../stores/globalStore/taskTypes';
import type { CountryCode } from '../../../../types/datasets/country-code';
import type { JaHaniNameSchema, JaKanaNameSchema } from '../../fields/NameFields/types';
import type { DecisionMakerRoleSchema, NomineeDecisionMakerRoleSchema } from '../../tasks/DecisionMakers/types';
export interface BasicDetailsSchema extends NameSchema, JaHaniNameSchema, JaKanaNameSchema, DecisionMakerRoleSchema, NomineeDecisionMakerRoleSchema, ContactDetailsSchema {
    jobTitle?: string;
    relationship?: LegalRepresentativeRelationshipType;
}
export interface BasicDetailsProps extends BaseInnerFormProps<BasicDetailsSchema> {
    country: CountryCode;
    taskType: TaskType;
    allowedRoles?: DecisionMakerType[];
    onResidencyCountryChange?(country: string): void;
    parentLegalEntity?: ExistingLegalEntity;
    trustedRoles?: Array<LegalEntityAssociation['type']>;
}
