import {instance} from "./axios";
import Messages from "../models/Messages";

interface MessagesParams {    
	page: number,
	tag: string
}

export function getMessages(params:MessagesParams) {
	return instance.get<Messages>("api/notifications", {
		params: {
            ...params,
            page_size:6,
            status: 'all',
            columns: 'is_read,updated_at',
			direction: 'asc'
        },

	});
}

export function deleteMessage(id: number) {
	return instance.post("api/notifications/delete", {		
            notification_id: id 
	});
}

export function deleteAllMessages() {
	return instance.post("api/notifications/delete/all");
}

export function getTagMessages() {
	return instance.get("api/notifications/tags");
}

export function markAsReadMessages(id: number) {
	return instance.post("api/notifications/mark-as-read", {		
		notification_id: id      
	});
}

export function markAllAsReadMessages() {
	return instance.post("api/notifications/mark-as-read/all");
}

export function getUnreadMessages() {
	return instance.get<Messages>("api/notifications", {
		params: {
			page:1,
            page_size:5,
            status: 'unread',
            columns: 'is_read,updated_at',
        },
		// @ts-ignore
		cancelable: false,
	});
}