@agendize/vue-settings
Version:
Vue agendize's settings component
30 lines (29 loc) • 1.37 kB
TypeScript
import { CalendarApi, StaffGroupEntity, 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 StaffGroupsViewModel(locale: Locale, staffGroupsTable: any, api: CalendarApi, companyId: string, organisation: AccountEntity, router?: Router, acl?: any): {
actionButtons: Ref<Ref<ActionButton>[]>;
staffGroupsTableInfo: {
columns: {
label: string;
field: string;
width: string;
sortable: boolean;
headerStyles?: string | undefined;
columnStyles?: string | undefined;
sortCompareFn?: ((a: any, b: any) => number) | undefined;
}[];
sortable: {
order: string;
sort: 'desc' | 'asc';
};
};
fetchStaffGroups: (page: number) => Promise<StaffGroupEntity[]>;
filterStaffGroups: (staffGroups: StaffGroupEntity[], search: string) => StaffGroupEntity[];
selectStaffGroups: (staffGroups: StaffGroupEntity[]) => void;
staffGroupsCount: Ref<number>;
selectedStaffGroups: Ref<StaffGroupEntity[]>;
displayStaffGroupDetails: (staffGroup: StaffGroupEntity) => Promise<void>;
};