# This file was auto-generated by Fern from our API Definition.

import typing

import typing_extensions


class OrderLineItemPricingBlocklistsBlockedServiceChargeParams(typing_extensions.TypedDict):
    """
    A service charge to block from applying to a line item. The service charge
    must be identified by either `service_charge_uid` or
    `service_charge_catalog_object_id`, but not both.
    """

    uid: typing_extensions.NotRequired[typing.Optional[str]]
    """
    A unique ID of the `BlockedServiceCharge` within the order.
    """

    service_charge_uid: typing_extensions.NotRequired[typing.Optional[str]]
    """
    The `uid` of the service charge that should be blocked. Use this field to
    block ad hoc service charges. For catalog service charges, use the 
    `service_charge_catalog_object_id` field.
    """

    service_charge_catalog_object_id: typing_extensions.NotRequired[typing.Optional[str]]
    """
    The `catalog_object_id` of the service charge that should be blocked.
    Use this field to block catalog service charges. For ad hoc service charges,
    use the `service_charge_uid` field.
    """
