sarlink-portal/lib/types.ts

71 lines
1.2 KiB
TypeScript
Raw Normal View History

export type PaymentType = {
numberOfMonths: number;
userId: string;
deviceIds: string[];
amount: number;
paid: boolean;
};
export type TopupType = {
amount: number;
userId: string;
paid: boolean;
};
interface IpAddress {
ip: string;
mask: number;
}
interface Ipv6Address {
ip: string;
prefix: number;
}
export interface MacAddress {
ruleId?: number;
name: string;
macAddress: string;
}
export interface GroupProfile {
groupId: string;
site?: string;
name: string;
buildIn?: boolean;
ipList?: IpAddress[];
ipv6List?: Ipv6Address[];
macAddressList?: MacAddress[];
count: number;
type: number;
resource: number;
}
export interface OmadaResponse {
errorCode: number;
msg: string;
result: {
data: GroupProfile[];
};
}
export interface TNationalPerson {
nic: string;
name: string;
name_en: string;
dob: string;
gender: "M" | "F"; // Assuming gender can only be Male or Female
house_name: string;
house_name_en: string;
island_name: string;
island_name_en: string;
atoll: string;
atoll_en: string;
constituency: string;
district_en: string | null;
block_no: string | null;
email: string | null;
primary_contact: string;
image_url: string;
}