@agendize/vue-settings
Version:
Vue agendize's settings component
34 lines (33 loc) • 1.45 kB
TypeScript
import { CalendarApi, ServiceEntity, AccountEntity } from "@agendize/js-calendar-api";
import { Ref } from "vue";
import { Locale } from "@agendize/az-i18n";
import { Router } from "vue-router";
export declare function ServicesViewModel(locale: Locale, servicesTable: any, api: CalendarApi, companyId: string, organisation: AccountEntity, router?: Router): {
servicesTableInfo: {
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';
};
};
fetchServices: (page: number) => Promise<ServiceEntity[]>;
filterServices: (services: ServiceEntity[], search: string) => ServiceEntity[];
selectServices: (services: ServiceEntity[]) => void;
servicesCount: Ref<number>;
selectedServices: Ref<ServiceEntity[]>;
deleteSelectedServices: () => Promise<void>;
getServiceGroupNames: (serviceId: string) => string[];
displayServiceDetails: (service: ServiceEntity) => Promise<void>;
duplicateService: () => Promise<void>;
newService: () => Promise<void>;
deleteLoading: Ref<boolean>;
};