import 'package:vitalapp/database/entities/defines.dart';
import 'package:vitalapp/database/entities/patient.dart';
import 'package:vitalapp/managers/interfaces/base.dart';

import 'models/common.dart';

/// 数据同步Mananger
abstract class IDataSyncManager implements IManager {
  /// 获取病人分页列表
  ///
  /// [pageIndex] 当前页，从 `1` 开始
  ///
  /// [pageSize] 页码，默认 `50`
  ///
  /// [syncState] 同步状态，设为 `null` 时查询全部状态
  Future<PagedDataCollection<PatientEntity>> getPatientPagedList(
    int pageIndex, {
    int pageSize = 50,
    OfflineDataSyncState? syncState,
  });

  /// 同步病人
  Future<bool> syncPatient(PatientEntity entity);
}
