syntax = "proto3";

package core_system.shop.v1;

// Shop 정보 메시지
message Shop {
    optional string id = 1;
    optional string company_id = 2;
    optional string shop_no = 3;
    optional string name = 4;
    optional string site_name = 5;
    optional string logo = 6;
    optional string created_at = 7;
    optional string service_started_at = 8;
    optional string base_domain = 9;
    optional string primary_domain = 10;
    optional string main_status = 11;
    optional string sub_status = 12;
    optional string timezone = 13;
    optional string previous_main_status = 14;
    optional string short_code = 15;
    optional string is_visible = 16;
    optional string ecommerce_platform = 17;
}

// ShopDetail 정보 메시지
message ShopDetail {
    optional string id = 1;
    optional string shop_id = 2;
    optional string category = 3;
    optional string default = 4;
    optional string active = 5;
    optional string terms_and_privacy_agreement = 6;
    optional string terms_and_privacy_agreement_agreed_at = 7;
    optional string number_of_monthly_orders = 8;
    optional string number_of_employees = 9;
    optional string is_used_personal_data_masking = 10;
    optional string is_cafe24_pro = 11;
    optional string webhook_active_status = 12;
    optional string webhook_active_updated_at = 13;
    optional string webhook_blacklist_event_type = 14;
    optional string webhook_active_status_reason = 15;
}

// ShopApp 정보 메시지
message ShopApp {
    optional string id = 1;
    optional string shop_id = 2;
    optional string app_id = 3;
    optional string installed_at = 4;
    optional string removed_at = 5;
    optional string main_status = 6;
    optional string key_metric = 7;
    optional string is_deleted = 8;
    optional string deleted_at = 9;
    optional string migrate_status = 10;
    optional string webhook_delivery_status = 11;
    optional string webhook_blocked_event_types = 12;
}

// ShopServiceItem 정보 메시지 (ShopService 모델을 나타냄)
message ShopServiceItem {
    optional string id = 1;
    optional string shop_id = 2;
    optional string service_id = 3;
    optional string main_status = 4;
    optional string sub_status = 5;
    optional string is_used_trial_subscription = 6;
    optional string installed_at = 7;
    optional string live_at = 8;
    optional string stopped_at = 9;
    optional string subscription_conversion_method = 10;
}
