from _typeshed import Incomplete

from braintree.graphql.enums.recommendations import Recommendations
from braintree.graphql.inputs.customer_session_input import CustomerSessionInput

class CustomerRecommendationsInput:
    def __init__(
        self,
        session_id: str,
        recommendations: list[Recommendations],
        merchant_account_id: str | None = None,
        customer: CustomerSessionInput | None = None,
    ) -> None: ...
    def to_graphql_variables(self) -> dict[Incomplete, Incomplete]: ...
    @staticmethod
    def builder(session_id: str, recommendations: list[Recommendations]): ...

    class Builder:
        def __init__(self, session_id: str, recommendations: list[Recommendations]) -> None: ...
        def merchant_account_id(self, merchant_account_id: str): ...
        def customer(self, customer: CustomerSessionInput): ...
        def build(self): ...
