//! Gemini vendor definition (placeholder)
//!
//! This module contains Gemini-specific knowledge. Currently a placeholder
//! with pass-through behavior until Gemini mappings are implemented.

use super::{ModeMapping, ModelMapping, VendorInfo};
use crate::connectors::acp::config::ConnectorAgentType;

/// Gemini vendor implementation (placeholder)
pub struct GeminiVendor;

impl VendorInfo for GeminiVendor {
    fn id(&self) -> &'static str {
        "gemini"
    }

    fn display_name(&self) -> &'static str {
        "Gemini"
    }

    fn aliases(&self) -> &'static [&'static str] {
        &["google"]
    }

    fn agent_type(&self) -> ConnectorAgentType {
        ConnectorAgentType::Gemini
    }

    fn cli_command(&self) -> &'static str {
        "gemini"
    }

    fn mode_mappings(&self) -> &'static [ModeMapping] {
        // Not yet implemented - pass through
        &[]
    }

    fn model_mappings(&self) -> &'static [ModelMapping] {
        // Not yet implemented - pass through
        &[]
    }

    fn default_features(&self) -> &'static [&'static str] {
        &[]
    }

    fn icon_path(&self) -> &'static str {
        "gemini"
    }
}
