use cloudkit::prelude::*;
fn main() {
let notification = CKNotificationInfo::new()
.with_alert_body("Update available")
.with_desired_keys(vec!["title".into(), "updatedAt".into()])
.with_content_available(true);
let query = CKQuerySubscription::new(
"Task",
"TRUEPREDICATE",
"task-query-sub",
QuerySubscriptionOptions::FIRES_ON_RECORD_CREATION,
)
.with_notification_info(notification.clone());
let zone = CKRecordZoneSubscription::new(CKRecordZoneID::new("Tasks", "__defaultOwner__"), "task-zone-sub")
.with_notification_info(notification.clone());
let database = CKDatabaseSubscription::new("task-db-sub").with_notification_info(notification);
println!("query={} zone={} database={}", query.base().subscription_id(), zone.base().subscription_id(), database.base().subscription_id());
println!("✅ subscription area OK");
}