@experteam-mx/ngx-services
Version:
Angular common services for Experteam apps
69 lines (68 loc) • 1.75 kB
TypeScript
import { LaravelModel } from './api.models';
import { Pivot } from './api-security.types';
export interface Session extends LaravelModel {
model_type: string;
model_id: number;
status: string;
last_activity: string;
user_agent: string;
gmt_offset: string;
opening_id: number;
user_id: number;
installation_id: number;
locale: string | null;
decimal_point: number;
country_id: number;
company_id: number;
company_country_id: number;
location_id: number;
country_reference_currency_id: number;
location_employee_id: number;
}
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 UserMe extends Omit<User, 'roles'> {
permissions: string[];
session: Session | null;
role: Role;
}
export interface Module extends LaravelModel {
name: string;
code: string;
module_type_id: number;
module_type: ModuleType;
permissions: Permission[];
require_default_permission?: boolean;
}
export interface ModuleType extends LaravelModel {
name: string;
description: string;
}