o
    Bi                    @   s   d dl mZ d dlmZ d dlmZ d dlmZ d dlm	Z	 d dl
mZ d dlmZ d dlmZ d d	lmZmZmZmZmZ d d
lmZmZmZmZmZ erTd dlmZ G dd ded ed ed ZdS )    )CreateableAPIResource)ExpandableField)
ListObject)ListableAPIResource)RequestOptions)StripeObject)UpdateableAPIResource)sanitize_id)ClassVarDictListOptionalcast)LiteralNotRequired	TypedDictUnpackTYPE_CHECKING)Filec                   @   s  e Zd ZU dZdZeed  ed< G dd deZ	G dd deZ
G dd	 d	eZG d
d deZG dd deZG dd deZG dd deZG dd deZG dd deZG dd deZG dd deZG dd deZG dd deZG dd deZG d d! d!eZG d"d# d#eZG d$d% d%eZG d&d' d'eZG d(d) d)eZG d*d+ d+eZG d,d- d-eZG d.d/ d/eZ G d0d1 d1eZ!G d2d3 d3eZ"G d4d5 d5eZ#G d6d7 d7eZ$G d8d9 d9eZ%G d:d; d;eZ&G d<d= d=eZ'G d>d? d?eZ(G d@dA dAeZ)G dBdC dCeZ*e	edD< e+e
 edE< 	 e,edF< 	 e+e- edG< 	 e-edH< 	 e+e edI< 	 e.edJ< 	 e/e-e-f edK< 	 e-edL< 	 ed edM< 	 e+e- edN< 	 e+e0edO   edP< 	 eedQ< e+e edR< 	 edS edT< 	 edU edV< 	 e1dWe2dX dYd fdZd[Z3e1dWe2dX dYd fd\d]Z4e1dWe2d^ dYe5d  fd_d`Z6e1dWe2d^ dYe5d  fdadbZ7e1dHe-dWe2dc dYd fdddeZ8e1dHe-dWe2dc dYd fdfdgZ9e1dHe-dWe2dh dYd fdidjZ:e1dHe-dWe2dh dYd fdkdlZ;e	e
eeedmZ<dnS )o
Cardholderz
    An Issuing `Cardholder` object represents an individual or business entity who is [issued](https://stripe.com/docs/issuing) cards.

    Related guide: [How to create a cardholder](https://stripe.com/docs/issuing/cards#create-cardholder)
    zissuing.cardholderOBJECT_NAMEc                   @   s.   e Zd ZU G dd deZeed< deiZdS )zCardholder.Billingc                   @   s`   e Zd ZU ee ed< 	 ee ed< 	 ee ed< 	 ee ed< 	 ee ed< 	 ee ed< dS )zCardholder.Billing.Addresscitycountryline1line2postal_codestateN)__name__
__module____qualname__r   str__annotations__ r"   r"   Z/var/www/html/Trade-python/venv/lib/python3.10/site-packages/stripe/issuing/_cardholder.pyAddress&   s   
 r$   addressN)r   r   r   r   r$   r!   _inner_class_typesr"   r"   r"   r#   Billing%   s   
 r'   c                   @   s   e Zd ZU eed< dS )zCardholder.Companytax_id_providedN)r   r   r   boolr!   r"   r"   r"   r#   CompanyC      
 r*   c                   @   s   e Zd ZU G dd deZG dd deZG dd deZee ed< 	 ee ed< 	 ee	 ed	< 	 ee	 ed
< 	 ee ed< 	 eeedZ
dS )zCardholder.Individualc                   @   4   e Zd ZU G dd deZee ed< 	 deiZdS )z!Cardholder.Individual.CardIssuingc                   @   s6   e Zd ZU ee ed< 	 ee ed< 	 ee ed< dS )z5Cardholder.Individual.CardIssuing.UserTermsAcceptancedateip
user_agentN)r   r   r   r   intr!   r    r"   r"   r"   r#   UserTermsAcceptanceK      
 r1   user_terms_acceptanceN)r   r   r   r   r1   r   r!   r&   r"   r"   r"   r#   CardIssuingJ   s
   
 r4   c                   @   s6   e Zd ZU ee ed< 	 ee ed< 	 ee ed< dS )zCardholder.Individual.DobdaymonthyearN)r   r   r   r   r0   r!   r"   r"   r"   r#   Dob_   r2   r8   c                   @   r,   )z"Cardholder.Individual.Verificationc                   @   s0   e Zd ZU eed  ed< 	 eed  ed< dS )z+Cardholder.Individual.Verification.Documentr   backfrontN)r   r   r   r   r   r!   r"   r"   r"   r#   Documentn   s
   
 r;   documentN)r   r   r   r   r;   r   r!   r&   r"   r"   r"   r#   Verificationm   s
   
 
r=   card_issuingdob
first_name	last_nameverification)r>   r?   rB   N)r   r   r   r   r4   r8   r=   r   r!   r    r&   r"   r"   r"   r#   
IndividualI   s$   
 
rC   c                   @   s4   e Zd ZU eed  ed< 	 eeed   ed< dS )zCardholder.Requirements)listedzrejected.listedzrequirements.past_dueunder_reviewdisabled_reason)	zcompany.tax_idz2individual.card_issuing.user_terms_acceptance.datez0individual.card_issuing.user_terms_acceptance.ipzindividual.dob.dayzindividual.dob.monthzindividual.dob.yearzindividual.first_namezindividual.last_namez individual.verification.documentpast_dueN)r   r   r   r   r   r!   r   r"   r"   r"   r#   Requirements   s   
 rH   c                   @   s   e Zd ZU G dd deZeeed   ed< 	 eee	  ed< 	 eeed   ed< 	 eee	  ed< 	 eee  ed< 	 ee	 ed	< 	 deiZ
d
S )zCardholder.SpendingControlsc                   @   :   e Zd ZU eed< 	 eeed   ed< 	 ed ed< dS )z)Cardholder.SpendingControls.SpendingLimitamount'  ac_refrigeration_repairaccounting_bookkeeping_servicesadvertising_servicesagricultural_cooperativeairlines_air_carriersairports_flying_fieldsambulance_servicesamusement_parks_carnivalsantique_reproductionsantique_shops	aquariums architectural_surveying_servicesart_dealers_and_galleriesartists_supply_and_craft_shopsauto_and_home_supply_storesauto_body_repair_shopsauto_paint_shopsauto_service_shopsautomated_cash_disburseautomated_fuel_dispensersautomobile_associations'automotive_parts_and_accessories_storesautomotive_tire_storesbail_and_bond_paymentsbakeriesbands_orchestrasbarber_and_beauty_shopsbetting_casino_gamblingbicycle_shopsbilliard_pool_establishmentsboat_dealersboat_rentals_and_leasesbook_stores books_periodicals_and_newspapersbowling_alleys	bus_linesbusiness_secretarial_schoolsbuying_shopping_services2cable_satellite_and_other_pay_television_and_radio%camera_and_photographic_supply_stores"candy_nut_and_confectionery_storescar_and_truck_dealers_new_usedcar_and_truck_dealers_used_onlycar_rental_agencies
car_washescarpentry_servicescarpet_upholstery_cleaningcaterers7charitable_and_social_service_organizations_fundraisingchemicals_and_allied_productschild_care_services!childrens_and_infants_wear_storeschiropodists_podiatristschiropractorscigar_stores_and_stands#civic_social_fraternal_associationscleaning_and_maintenanceclothing_rentalcolleges_universitiescommercial_equipmentcommercial_footwear'commercial_photography_art_and_graphicscommuter_transport_and_ferriescomputer_network_servicescomputer_programmingcomputer_repaircomputer_software_stores"computers_peripherals_and_softwareconcrete_work_servicesconstruction_materialsconsulting_public_relationscorrespondence_schoolscosmetic_storescounseling_servicescountry_clubscourier_servicescourt_costscredit_reporting_agenciescruise_linesdairy_products_storesdance_hall_studios_schoolsdating_escort_servicesdentists_orthodontistsdepartment_storesdetective_agenciesdigital_goods_applicationsdigital_goods_gamesdigital_goods_large_volumedigital_goods_media!direct_marketing_catalog_merchant8direct_marketing_combination_catalog_and_retail_merchant&direct_marketing_inbound_telemarketing#direct_marketing_insurance_servicesdirect_marketing_other'direct_marketing_outbound_telemarketingdirect_marketing_subscriptiondirect_marketing_traveldiscount_storesdoctorsdoor_to_door_sales-drapery_window_covering_and_upholstery_storesdrinking_placesdrug_stores_and_pharmacies.drugs_drug_proprietaries_and_druggist_sundriesdry_cleanersdurable_goodsduty_free_storeseating_places_restaurantseducational_serviceselectric_razor_storeselectric_vehicle_chargingelectrical_parts_and_equipmentelectrical_serviceselectronics_repair_shopselectronics_storeselementary_secondary_schools%emergency_services_gcas_visa_use_onlyemployment_temp_agenciesequipment_rentalexterminating_servicesfamily_clothing_storesfast_food_restaurantsfinancial_institutions(fines_government_administrative_entities2fireplace_fireplace_screens_and_accessories_storesfloor_covering_storesflorists+florists_supplies_nursery_stock_and_flowers$freezer_and_locker_meat_provisionersfuel_dealers_non_automotivefuneral_services_crematoriesAfurniture_home_furnishings_and_equipment_stores_except_appliancesfurniture_repair_refinishingfurriers_and_fur_shopsgeneral_services$gift_card_novelty_and_souvenir_shops glass_paint_and_wallpaper_storesglassware_crystal_storesgolf_courses_public3government_licensed_horse_dog_racing_us_region_onlyAgovernment_licensed_online_casions_online_gambling_us_region_only(government_owned_lotteries_non_us_region)government_owned_lotteries_us_region_onlygovernment_servicesgrocery_stores_supermarketshardware_equipment_and_supplieshardware_storeshealth_and_beauty_spashearing_aids_sales_and_suppliesheating_plumbing_a_chobby_toy_and_game_shopshome_supply_warehouse_stores	hospitalshotels_motels_and_resortshousehold_appliance_storesindustrial_suppliesinformation_retrieval_servicesinsurance_defaultinsurance_underwriting_premiumsintra_company_purchases3jewelry_stores_watches_clocks_and_silverware_storeslandscaping_services	laundrieslaundry_cleaning_serviceslegal_services_attorneys luggage_and_leather_goods_stores lumber_building_materials_storesmanual_cash_disbursemarinas_service_and_suppliesmarketplacesmasonry_stonework_and_plastermassage_parlorsmedical_and_dental_labs=medical_dental_ophthalmic_and_hospital_equipment_and_suppliesmedical_servicesmembership_organizations-mens_and_boys_clothing_and_accessories_storesmens_womens_clothing_storesmetal_service_centersmiscellaneous)miscellaneous_apparel_and_accessory_shopsmiscellaneous_auto_dealersmiscellaneous_business_servicesmiscellaneous_food_stores!miscellaneous_general_merchandisemiscellaneous_general_services.miscellaneous_home_furnishing_specialty_stores%miscellaneous_publishing_and_printing!miscellaneous_recreation_servicesmiscellaneous_repair_shopsmiscellaneous_specialty_retailmobile_home_dealersmotion_picture_theaters#motor_freight_carriers_and_truckingmotor_homes_dealers$motor_vehicle_supplies_and_new_partsmotorcycle_shops_and_dealersmotorcycle_shops_dealers7music_stores_musical_instruments_pianos_and_sheet_musicnews_dealers_and_newsstandsnon_fi_money_orders&non_fi_stored_value_card_purchase_loadnondurable_goods'nurseries_lawn_and_garden_supply_storesnursing_personal_careoffice_and_commercial_furnitureopticians_eyeglassesoptometrists_ophthalmologist#orthopedic_goods_prosthetic_devices
osteopaths#package_stores_beer_wine_and_liquorpaints_varnishes_and_suppliesparking_lots_garagespassenger_railways
pawn_shopspet_shops_pet_food_and_supplies petroleum_and_petroleum_productsphoto_developing7photographic_photocopy_microfilm_equipment_and_suppliesphotographic_studiospicture_video_production'piece_goods_notions_and_other_dry_goods'plumbing_heating_equipment_and_suppliespolitical_organizationspostal_services_government_only.precious_stones_and_metals_watches_and_jewelryprofessional_servicespublic_warehousing_and_storagequick_copy_repro_and_blueprint	railroads'real_estate_agents_and_managers_rentalsrecord_storesrecreational_vehicle_rentalsreligious_goods_storesreligious_organizationsroofing_siding_sheet_metalsecretarial_support_servicessecurity_brokers_dealersservice_stations/sewing_needlework_fabric_and_piece_goods_storesshoe_repair_hat_cleaningshoe_storessmall_appliance_repairsnowmobile_dealersspecial_trade_servicesspecialty_cleaningsporting_goods_storessporting_recreation_camps sports_and_riding_apparel_storessports_clubs_fieldsstamp_and_coin_stores5stationary_office_supplies_printing_and_writing_paper1stationery_stores_office_and_school_supply_storesswimming_pools_salest_ui_travel_germanytailors_alterations tax_payments_government_agenciestax_preparation_servicestaxicabs_limousines/telecommunication_equipment_and_telephone_salestelecommunication_servicestelegraph_servicestent_and_awning_shopstesting_laboratoriestheatrical_ticket_agencies
timesharestire_retreading_and_repairtolls_bridge_fees tourist_attractions_and_exhibitstowing_servicestrailer_parks_campgroundstransportation_servicestravel_agencies_tour_operatorstruck_stop_iterationtruck_utility_trailer_rentals-typesetting_plate_making_and_related_servicestypewriter_stores.u_s_federal_government_agencies_or_departmentsuniforms_commercial_clothing&used_merchandise_and_secondhand_stores	utilitiesvariety_storesveterinary_servicesvideo_amusement_game_suppliesvideo_game_arcadesvideo_tape_rental_storesvocational_trade_schoolswatch_jewelry_repairwelding_repairwholesale_clubswig_and_toupee_storeswires_money_orders$womens_accessory_and_specialty_shopswomens_ready_to_wear_storeswrecking_and_salvage_yards
categoriesall_timedailymonthlyper_authorizationweeklyyearlyintervalN)r   r   r   r0   r!   r   r   r   r"   r"   r"   r#   SpendingLimit   "   
   /r|  rK   allowed_categoriesallowed_merchant_countriesblocked_categoriesblocked_merchant_countriesspending_limitsspending_limits_currencyN)r   r   r   r   r|  r   r   r   r!   r    r&   r"   r"   r"   r#   SpendingControls   sB   
   C  /  /r  c                   @   s   e Zd ZU ded< 	 ed ed< 	 ee ed< 	 eee  ed< 	 ed ed< 	 eeeef  ed	< 	 eed
< 	 ee ed< 	 eeed   ed< 	 ed ed< 	 eed  ed< 	 eed  ed< dS )Cardholder.CreateParamsCardholder.CreateParamsBillingbillingCardholder.CreateParamsCompanycompanyemailexpand!Cardholder.CreateParamsIndividual
individualmetadatanamephone_numberdeenesfritpreferred_locales'Cardholder.CreateParamsSpendingControlsspending_controlsactiveinactivestatusr  r  typeN)	r   r   r   r!   r   r    r   r   r   r"   r"   r"   r#   CreateParamsk  s:   
 
r  c                   @      e Zd ZU ded< dS )r  %Cardholder.CreateParamsBillingAddressr%   Nr   r   r   r!   r"   r"   r"   r#   CreateParamsBilling  r+   r  c                   @   P   e Zd ZU eed< 	 eed< 	 eed< 	 ee ed< 	 eed< 	 ee ed< dS )r  r   r   r   r   r   r   Nr   r   r   r    r!   r   r"   r"   r"   r#   CreateParamsBillingAddress     
 r  c                   @      e Zd ZU ee ed< dS )r  tax_idNr   r   r   r   r    r!   r"   r"   r"   r#   CreateParamsCompany     
 r  c                   @   R   e Zd ZU ed ed< 	 ed ed< 	 ee ed< 	 ee ed< 	 ed ed< d	S )
r  ,Cardholder.CreateParamsIndividualCardIssuingr>   $Cardholder.CreateParamsIndividualDobr?   r@   rA   -Cardholder.CreateParamsIndividualVerificationrB   Nr   r   r   r   r!   r    r"   r"   r"   r#   CreateParamsIndividual     
 r  c                   @      e Zd ZU ed ed< dS )r  ?Cardholder.CreateParamsIndividualCardIssuingUserTermsAcceptancer3   Nr   r   r   r   r!   r"   r"   r"   r#   !CreateParamsIndividualCardIssuing  
   
 r  c                   @   6   e Zd ZU ee ed< 	 ee ed< 	 ed ed< dS )r  r-   r.   Literal['']|strr/   Nr   r   r   r   r0   r!   r    r"   r"   r"   r#   4CreateParamsIndividualCardIssuingUserTermsAcceptance  r2   r  c                   @   *   e Zd ZU eed< 	 eed< 	 eed< dS )r  r5   r6   r7   Nr   r   r   r0   r!   r"   r"   r"   r#   CreateParamsIndividualDob     
 r  c                   @   r  )r  5Cardholder.CreateParamsIndividualVerificationDocumentr<   Nr  r"   r"   r"   r#   "CreateParamsIndividualVerification  r  r  c                   @   (   e Zd ZU ee ed< 	 ee ed< dS )r  r9   r:   Nr  r"   r"   r"   r#   *CreateParamsIndividualVerificationDocument  
   
 r  c                   @   |   e Zd ZU eeed   ed< 	 eee  ed< 	 eeed   ed< 	 eee  ed< 	 eed  ed< 	 ee ed< d	S )
r  rK   r~  r  r  r  4Cardholder.CreateParamsSpendingControlsSpendingLimitr  r  Nr   r   r   r   r   r   r!   r    r"   r"   r"   r#   CreateParamsSpendingControls  >   
   /  /r  c                   @   rI   )r  rJ   rK   rs  rt  r{  Nr   r   r   r0   r!   r   r   r   r"   r"   r"   r#   )CreateParamsSpendingControlsSpendingLimit  r}  r  c                   @   s   e Zd ZU ed ed< 	 ee ed< 	 ee ed< 	 eee  ed< 	 ee ed< 	 ee ed< 	 ee ed< 	 eed	  ed
< 	 eed  ed< dS )Cardholder.ListParamsz Cardholder.ListParamsCreated|intcreatedr  ending_beforer  limitr  starting_afterr  blockedr  r  r  r  N)	r   r   r   r   r!   r    r   r0   r   r"   r"   r"   r#   
ListParams  s&   
 r  c                   @   sD   e Zd ZU ee ed< 	 ee ed< 	 ee ed< 	 ee ed< dS )zCardholder.ListParamsCreatedgtgteltlteN)r   r   r   r   r0   r!   r"   r"   r"   r#   ListParamsCreated  s   
 r  c                   @   s   e Zd ZU ed ed< 	 ed ed< 	 ee ed< 	 eee  ed< 	 ed ed< 	 eeeef  ed	< 	 ee ed
< 	 eeed   ed< 	 ed ed< 	 eed  ed< dS )Cardholder.ModifyParamsCardholder.ModifyParamsBillingr  Cardholder.ModifyParamsCompanyr  r  r  !Cardholder.ModifyParamsIndividualr  r  r  r  r  'Cardholder.ModifyParamsSpendingControlsr  r  r  N)	r   r   r   r   r!   r    r   r   r   r"   r"   r"   r#   ModifyParams	  s2   
 
r  c                   @   r  )r  %Cardholder.ModifyParamsBillingAddressr%   Nr  r"   r"   r"   r#   ModifyParamsBilling4	  r+   r  c                   @   r  )r  r   r   r   r   r   r   Nr  r"   r"   r"   r#   ModifyParamsBillingAddress:	  r  r  c                   @   r  )r  r  Nr  r"   r"   r"   r#   ModifyParamsCompanyT	  r  r  c                   @   r  )
r  ,Cardholder.ModifyParamsIndividualCardIssuingr>   $Cardholder.ModifyParamsIndividualDobr?   r@   rA   -Cardholder.ModifyParamsIndividualVerificationrB   Nr  r"   r"   r"   r#   ModifyParamsIndividualZ	  r  r  c                   @   r  )r  ?Cardholder.ModifyParamsIndividualCardIssuingUserTermsAcceptancer3   Nr  r"   r"   r"   r#   !ModifyParamsIndividualCardIssuingt	  r  r  c                   @   r  )r  r-   r.   r  r/   Nr  r"   r"   r"   r#   4ModifyParamsIndividualCardIssuingUserTermsAcceptance|	  r2   r  c                   @   r  )r  r5   r6   r7   Nr  r"   r"   r"   r#   ModifyParamsIndividualDob	  r  r  c                   @   r  )r  5Cardholder.ModifyParamsIndividualVerificationDocumentr<   Nr  r"   r"   r"   r#   "ModifyParamsIndividualVerification	  r  r  c                   @   r  )r  r9   r:   Nr  r"   r"   r"   r#   *ModifyParamsIndividualVerificationDocument	  r  r  c                   @   r  )
r  rK   r~  r  r  r  4Cardholder.ModifyParamsSpendingControlsSpendingLimitr  r  Nr  r"   r"   r"   r#   ModifyParamsSpendingControls	  r  r  c                   @   rI   )r  rJ   rK   rs  rt  r{  Nr  r"   r"   r"   r#   )ModifyParamsSpendingControlsSpendingLimit  r}  r  c                   @   s   e Zd ZU eee  ed< dS )Cardholder.RetrieveParamsr  N)r   r   r   r   r   r    r!   r"   r"   r"   r#   RetrieveParams_  s   
 r  r  r  r  r  idr  livemoder  r  objectr  r  r  requirementsr  r  r  r  r  paramsr  returnc                 K   s   t d| jd|  |dS )S
        Creates a new Issuing Cardholder object that can be issued cards.
        r   postr  )r   _static_request	class_urlclsr  r"   r"   r#   create  s   zCardholder.createc                    s"   t d| jd|  |dI dH S )r  r   r  r  N)r   _static_request_asyncr  r   r"   r"   r#   create_async  s   
zCardholder.create_asyncr  c                 K   s4   | j d|  |d}t|tstdt|j |S )
        Returns a list of Issuing Cardholder objects. The objects are sorted in descending order by creation date, with the most recently created object appearing first.
        getr  %Expected list object from API, got %s)r  r  
isinstancer   	TypeErrorr  r   r  r  resultr"   r"   r#   list  s   
zCardholder.listc                    s<   | j d|  |dI dH }t|tstdt|j |S )r  r  r  Nr  )r  r  r  r   r	  r  r   r
  r"   r"   r#   
list_async  s   
zCardholder.list_asyncr  c                 K   s*   d|   t|f }td| jd||dS )
        Updates the specified Issuing Cardholder object by setting the values of the parameters passed. Any parameters not provided will be left unchanged.
        %s/%sr   r  r  )r  r	   r   r  r  r  r  urlr"   r"   r#   modify  s   zCardholder.modifyc                    s2   d|   t|f }td| jd||dI dH S )r  r  r   r  r  N)r  r	   r   r  r  r"   r"   r#   modify_async  s   
zCardholder.modify_asyncr  c                 K   s   | |fi |}|   |S )9
        Retrieves an Issuing Cardholder object.
        )refreshr  r  r  instancer"   r"   r#   retrieve  s   zCardholder.retrievec                    s$   | |fi |}|  I dH  |S )r  N)refresh_asyncr  r"   r"   r#   retrieve_async  s   zCardholder.retrieve_async)r  r  r  r  r  N)=r   r   r   __doc__r   r
   r   r!   r   r'   r*   rC   rH   r  r   r  r   r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r   r0   r    r)   r   r   classmethodr   r  r  r   r  r  r  r  r  r  r&   r"   r"   r"   r#   r      s$  
 O       ;7
    x  C&/
    x  C

r   N)stripe._createable_api_resourcer   stripe._expandable_fieldr   stripe._list_objectr   stripe._listable_api_resourcer   stripe._request_optionsr   stripe._stripe_objectr   stripe._updateable_api_resourcer   stripe._utilr	   typingr
   r   r   r   r   typing_extensionsr   r   r   r   r   stripe._filer   r   r"   r"   r"   r#   <module>   s"   
