import { Module, Role, RoleType, Session, User, UserMe } from './api-security.interfaces';
export type AuthLoginIn = {
    username: string;
    password: string;
    role?: number;
    system_name?: string;
};
export type AuthLoginOut = {
    access_token: string;
    token_type: string;
    expires_in: number;
};
export type AuthUserLoginIn = {
    username: string;
};
export type SessionIn = {
    modelType: string;
    modelId: number;
    token?: string;
};
export type SessionOut = {
    session: Session;
};
export type PutUsersIn = {
    user: User;
};
export type PutUsersOut = {
    user: User;
};
export type GetUserOut = {
    user: User;
};
export type GetUsersOut = {
    users: User[];
    total: number;
};
export type AuthMeOut = {
    user: UserMe;
};
export type ChangeLanguageIn = {
    languageId: number;
};
export type RolesOut = {
    roles: Role[];
    total: number;
};
export type Pivot = {
    role_id: number;
    permission_id: number;
} | {
    module_id: string;
    permission_id: string;
};
export type RoleOut = {
    role: Role;
};
export type RoleIn = {
    name: string;
    role_type_id: number;
    company_country_id: number;
    regional_country_id?: number[] | null;
    is_active: boolean;
    permissions?: string[];
};
export type RoleTypesOut = {
    role_types: RoleType[];
    total: number;
};
export type ModulesOut = {
    modules: Module[];
    total: number;
};
