68 lines
1.2 KiB
TypeScript
68 lines
1.2 KiB
TypeScript
// --- TYPES & export INTERFACES (File: types.ts) ---
|
|
|
|
import { DateType } from "react-native-ui-datepicker";
|
|
|
|
export interface UserData {
|
|
name: string;
|
|
surname: string;
|
|
username: string;
|
|
role?: string;
|
|
email?: string;
|
|
id: string;
|
|
}
|
|
|
|
export interface AttendanceRecord {
|
|
id: number;
|
|
site: string;
|
|
date: string;
|
|
in: string;
|
|
out: string | null;
|
|
status: 'complete' | 'incomplete';
|
|
}
|
|
|
|
export interface DocumentItem {
|
|
id: number;
|
|
mimetype: string;
|
|
title: string;
|
|
url: string;
|
|
updated_at: string;
|
|
}
|
|
|
|
export interface OfficeItem {
|
|
id: number;
|
|
name: string;
|
|
status: 'online' | 'offline';
|
|
temp: number;
|
|
lights: boolean;
|
|
power: number;
|
|
}
|
|
|
|
export interface TimeOffRequestType {
|
|
id: number;
|
|
name: string;
|
|
color: string;
|
|
abbreviation: string;
|
|
time_required: number;
|
|
deleted: number;
|
|
}
|
|
|
|
export interface TimeOffRequest {
|
|
id: number;
|
|
id_type: number;
|
|
id_user: number;
|
|
start_date: DateType;
|
|
end_date?: DateType | null;
|
|
start_time?: string | null;
|
|
end_time?: string | null;
|
|
message?: string | null;
|
|
status: number;
|
|
timeOffRequestType: TimeOffRequestType;
|
|
}
|
|
|
|
export interface ConstructionSite {
|
|
id: number;
|
|
// id_client: number;
|
|
name: string;
|
|
code: string;
|
|
attachments_count: number;
|
|
} |