2023-04-11 22:14:40 +00:00
|
|
|
//
|
|
|
|
// LocationsListViewModeling.swift
|
|
|
|
// Locations
|
|
|
|
//
|
|
|
|
// Created by Javier Cicchelli on 11/04/2023.
|
|
|
|
// Copyright © 2023 Röck+Cöde. All rights reserved.
|
|
|
|
//
|
|
|
|
|
2023-04-12 13:46:51 +02:00
|
|
|
import Combine
|
|
|
|
import Foundation
|
2023-04-12 16:32:34 +02:00
|
|
|
import Persistence
|
2023-04-12 13:46:51 +02:00
|
|
|
|
2023-04-11 22:14:40 +00:00
|
|
|
protocol LocationsListViewModeling: AnyObject {
|
|
|
|
|
|
|
|
// MARK: Properties
|
|
|
|
|
|
|
|
var coordinator: LocationsListCoordination? { get set }
|
|
|
|
|
2023-04-12 13:46:51 +02:00
|
|
|
var viewStatusPublisher: Published<LocationsListViewStatus>.Publisher { get }
|
2023-04-12 16:32:34 +02:00
|
|
|
var numberOfSectionsInData: Int { get }
|
2023-04-12 13:46:51 +02:00
|
|
|
|
2023-04-11 22:14:40 +00:00
|
|
|
// MARK: Functions
|
|
|
|
|
|
|
|
func openAddLocation()
|
2023-04-12 16:32:34 +02:00
|
|
|
func loadLocations()
|
|
|
|
func numberOfDataItems(in section: Int) -> Int
|
|
|
|
func dataItem(at indexPath: IndexPath) -> Location
|
2023-04-11 22:14:40 +00:00
|
|
|
|
|
|
|
}
|