import { ISelectOption } from '@/UI-kit/types/UI/ui-select.type';

/**
 * Опции для полей документа паспорта нерезидента
 */
export interface IPassportFieldsOptions {
    /** Опции для поля гражданства */
    citizenshipOptions?: ISelectOption[];
    /** Опции для поля пола (если потребуется в будущем) */
    genderOptions?: ISelectOption[];
    regionOptions?: ISelectOption[];
}

/**
 * Опции для полей документа госномера
 */
export interface ILicensePlateFieldsOptions {
    /** Опции для регионов (если потребуется в будущем) */
    regionOptions?: ISelectOption[];
}

/**
 * Опции для полей патента
 */
export interface IPatentFieldsOptions {
    /** Дополнительные опции для патента (если потребуется в будущем) */
    [key: string]: unknown;
}

/**
 * Опции для полей формы ФССП
 */
export interface IFsspFieldsOptions {
    /** Опции для поля гражданства */
    citizenshipOptions?: ISelectOption[];
    /** Опции для поля региона проживания */
    regionOptions?: ISelectOption[];
}

/**
 * Универсальная конфигурация опций для полей документов
 * Позволяет передавать опции для разных типов документов
 */
export interface IDocumentFieldsOptions {
    /** Опции для полей паспорта нерезидента */
    passport?: IPassportFieldsOptions;
    /** Опции для полей госномера */
    licensePlate?: ILicensePlateFieldsOptions;
    /** Опции для полей патента */
    patent?: IPatentFieldsOptions;
    /** Опции для полей ФССП */
    fssp?: IFsspFieldsOptions;
    /** Дополнительные опции для других типов документов */
    [documentType: string]: unknown;
}
