import { LaravelModel } from './api.models';
import { Pivot } from './api-security.types';
export interface Session extends LaravelModel {
    name: string;
    username: string;
    email: string;
    model_type: string;
    model_id: number;
    auth_type: string;
    language_id: number;
    country_id: number;
    location_id: number;
    installation_id: number;
    company_country_id: number;
    country_reference_currency_id: number;
    opening_id: number;
    locale: string;
    permissions: string[];
    roles: Role[];
    session: Session;
}
export interface Role extends LaravelModel {
    name: string;
    guard_name: string;
    company_country_id: number;
    role_type_id: number;
    regional_country_id: number | null;
    role_type: RoleType;
    permissions: Permission[];
}
export interface RoleType extends LaravelModel {
    name: string;
    level: number;
}
export interface Permission extends LaravelModel {
    name: string;
    guard_name: string;
    description: string;
    is_default: boolean;
    pivot: Pivot;
}
export interface User extends LaravelModel {
    name: string;
    username: string;
    model_type: string;
    model_id: number;
    auth_type: string;
    language_id: number;
    email: string;
    roles: Role[];
}
export interface Module extends LaravelModel {
    name: string;
    code: string;
    module_type_id: number;
    module_type: ModuleType;
    permissions: Permission[];
}
export interface ModuleType extends LaravelModel {
    name: string;
    description: string;
}
