import { IAlisaNlu } from '../../../platforms/interfaces';
export interface INluResult<T = object> {
    status: boolean;
    result: T | null;
}
export interface INluFIO {
    first_name?: string;
    patronymic_name?: string;
    last_name?: string;
}
export interface INluGeo {
    country?: string;
    city?: string;
    street?: string;
    house_number?: string;
    airport?: string;
}
export interface INluDateTime {
    year?: number;
    year_is_relative?: boolean;
    month?: number;
    month_is_relative?: boolean;
    day?: number;
    day_is_relative?: boolean;
    hour?: number;
    hour_is_relative?: boolean;
    minute?: number;
    minute_is_relative?: boolean;
}
export interface INluThisUser {
    username: string | null;
    first_name?: string | null;
    last_name?: string | null;
}
export interface INluSlot {
    type?: string;
    [name: string]: any;
}
export interface INluIntents {
    [name: string]: INluIntent;
}
export interface INluIntent {
    slots: INluSlot[] | INluSlot;
}
export interface INlu extends IAlisaNlu {
    thisUser?: INluThisUser;
    intents?: INluIntents;
}
