@agendize/vue-settings
Version:
Vue agendize's settings component
31 lines (30 loc) • 1.35 kB
TypeScript
import { CalendarApi, StaffEntity, AccountEntity } from "@agendize/js-calendar-api";
import { Ref } from "vue";
import { Locale } from "@agendize/az-i18n";
import { Router } from "vue-router";
import { ActionButton } from "../../component/menu-horizontal-company/viewModel";
export declare function StaffsViewModel(locale: Locale, staffsTable: any, api: CalendarApi, companyId: string, organisation: AccountEntity, router?: Router, acl?: any): {
actionButtons: Ref<Ref<ActionButton>[]>;
staffsTableInfo: {
columns: {
label: string;
field: string;
width: string;
sortable: boolean;
headerStyles?: string | undefined;
columnStyles?: string | undefined;
columnClasses?: string | undefined;
sortCompareFn?: ((a: any, b: any) => number) | undefined;
}[];
sortable: {
order: string;
sort: 'desc' | 'asc';
};
};
fetchStaffs: (page: number) => Promise<StaffEntity[]>;
filterStaffs: (staffs: StaffEntity[], search: string) => StaffEntity[];
selectStaffs: (staffs: StaffEntity[]) => void;
selectedStaffs: Ref<StaffEntity[]>;
displayStaffDetails: (staff: StaffEntity) => Promise<void>;
enableStaff: (staff: StaffEntity) => Promise<void>;
};