Files
Hotel-Booking/Backend/venv/lib/python3.12/site-packages/stripe/_quote_service.py
Iliyan Angelov 0c59fe1173 updates
2025-11-17 18:26:30 +02:00

376 lines
11 KiB
Python

# -*- coding: utf-8 -*-
# File generated from our OpenAPI spec
from stripe._stripe_service import StripeService
from stripe._util import sanitize_id
from typing import Optional, cast
from importlib import import_module
from typing_extensions import TYPE_CHECKING
if TYPE_CHECKING:
from stripe._list_object import ListObject
from stripe._quote import Quote
from stripe._quote_computed_upfront_line_items_service import (
QuoteComputedUpfrontLineItemsService,
)
from stripe._quote_line_item_service import QuoteLineItemService
from stripe._request_options import RequestOptions
from stripe.params._quote_accept_params import QuoteAcceptParams
from stripe.params._quote_cancel_params import QuoteCancelParams
from stripe.params._quote_create_params import QuoteCreateParams
from stripe.params._quote_finalize_quote_params import (
QuoteFinalizeQuoteParams,
)
from stripe.params._quote_list_params import QuoteListParams
from stripe.params._quote_pdf_params import QuotePdfParams
from stripe.params._quote_retrieve_params import QuoteRetrieveParams
from stripe.params._quote_update_params import QuoteUpdateParams
from typing import Any
_subservices = {
"computed_upfront_line_items": [
"stripe._quote_computed_upfront_line_items_service",
"QuoteComputedUpfrontLineItemsService",
],
"line_items": ["stripe._quote_line_item_service", "QuoteLineItemService"],
}
class QuoteService(StripeService):
computed_upfront_line_items: "QuoteComputedUpfrontLineItemsService"
line_items: "QuoteLineItemService"
def __init__(self, requestor):
super().__init__(requestor)
def __getattr__(self, name):
try:
import_from, service = _subservices[name]
service_class = getattr(
import_module(import_from),
service,
)
setattr(
self,
name,
service_class(self._requestor),
)
return getattr(self, name)
except KeyError:
raise AttributeError()
def list(
self,
params: Optional["QuoteListParams"] = None,
options: Optional["RequestOptions"] = None,
) -> "ListObject[Quote]":
"""
Returns a list of your quotes.
"""
return cast(
"ListObject[Quote]",
self._request(
"get",
"/v1/quotes",
base_address="api",
params=params,
options=options,
),
)
async def list_async(
self,
params: Optional["QuoteListParams"] = None,
options: Optional["RequestOptions"] = None,
) -> "ListObject[Quote]":
"""
Returns a list of your quotes.
"""
return cast(
"ListObject[Quote]",
await self._request_async(
"get",
"/v1/quotes",
base_address="api",
params=params,
options=options,
),
)
def create(
self,
params: Optional["QuoteCreateParams"] = None,
options: Optional["RequestOptions"] = None,
) -> "Quote":
"""
A quote models prices and services for a customer. Default options for header, description, footer, and expires_at can be set in the dashboard via the [quote template](https://dashboard.stripe.com/settings/billing/quote).
"""
return cast(
"Quote",
self._request(
"post",
"/v1/quotes",
base_address="api",
params=params,
options=options,
),
)
async def create_async(
self,
params: Optional["QuoteCreateParams"] = None,
options: Optional["RequestOptions"] = None,
) -> "Quote":
"""
A quote models prices and services for a customer. Default options for header, description, footer, and expires_at can be set in the dashboard via the [quote template](https://dashboard.stripe.com/settings/billing/quote).
"""
return cast(
"Quote",
await self._request_async(
"post",
"/v1/quotes",
base_address="api",
params=params,
options=options,
),
)
def retrieve(
self,
quote: str,
params: Optional["QuoteRetrieveParams"] = None,
options: Optional["RequestOptions"] = None,
) -> "Quote":
"""
Retrieves the quote with the given ID.
"""
return cast(
"Quote",
self._request(
"get",
"/v1/quotes/{quote}".format(quote=sanitize_id(quote)),
base_address="api",
params=params,
options=options,
),
)
async def retrieve_async(
self,
quote: str,
params: Optional["QuoteRetrieveParams"] = None,
options: Optional["RequestOptions"] = None,
) -> "Quote":
"""
Retrieves the quote with the given ID.
"""
return cast(
"Quote",
await self._request_async(
"get",
"/v1/quotes/{quote}".format(quote=sanitize_id(quote)),
base_address="api",
params=params,
options=options,
),
)
def update(
self,
quote: str,
params: Optional["QuoteUpdateParams"] = None,
options: Optional["RequestOptions"] = None,
) -> "Quote":
"""
A quote models prices and services for a customer.
"""
return cast(
"Quote",
self._request(
"post",
"/v1/quotes/{quote}".format(quote=sanitize_id(quote)),
base_address="api",
params=params,
options=options,
),
)
async def update_async(
self,
quote: str,
params: Optional["QuoteUpdateParams"] = None,
options: Optional["RequestOptions"] = None,
) -> "Quote":
"""
A quote models prices and services for a customer.
"""
return cast(
"Quote",
await self._request_async(
"post",
"/v1/quotes/{quote}".format(quote=sanitize_id(quote)),
base_address="api",
params=params,
options=options,
),
)
def accept(
self,
quote: str,
params: Optional["QuoteAcceptParams"] = None,
options: Optional["RequestOptions"] = None,
) -> "Quote":
"""
Accepts the specified quote.
"""
return cast(
"Quote",
self._request(
"post",
"/v1/quotes/{quote}/accept".format(quote=sanitize_id(quote)),
base_address="api",
params=params,
options=options,
),
)
async def accept_async(
self,
quote: str,
params: Optional["QuoteAcceptParams"] = None,
options: Optional["RequestOptions"] = None,
) -> "Quote":
"""
Accepts the specified quote.
"""
return cast(
"Quote",
await self._request_async(
"post",
"/v1/quotes/{quote}/accept".format(quote=sanitize_id(quote)),
base_address="api",
params=params,
options=options,
),
)
def cancel(
self,
quote: str,
params: Optional["QuoteCancelParams"] = None,
options: Optional["RequestOptions"] = None,
) -> "Quote":
"""
Cancels the quote.
"""
return cast(
"Quote",
self._request(
"post",
"/v1/quotes/{quote}/cancel".format(quote=sanitize_id(quote)),
base_address="api",
params=params,
options=options,
),
)
async def cancel_async(
self,
quote: str,
params: Optional["QuoteCancelParams"] = None,
options: Optional["RequestOptions"] = None,
) -> "Quote":
"""
Cancels the quote.
"""
return cast(
"Quote",
await self._request_async(
"post",
"/v1/quotes/{quote}/cancel".format(quote=sanitize_id(quote)),
base_address="api",
params=params,
options=options,
),
)
def finalize_quote(
self,
quote: str,
params: Optional["QuoteFinalizeQuoteParams"] = None,
options: Optional["RequestOptions"] = None,
) -> "Quote":
"""
Finalizes the quote.
"""
return cast(
"Quote",
self._request(
"post",
"/v1/quotes/{quote}/finalize".format(quote=sanitize_id(quote)),
base_address="api",
params=params,
options=options,
),
)
async def finalize_quote_async(
self,
quote: str,
params: Optional["QuoteFinalizeQuoteParams"] = None,
options: Optional["RequestOptions"] = None,
) -> "Quote":
"""
Finalizes the quote.
"""
return cast(
"Quote",
await self._request_async(
"post",
"/v1/quotes/{quote}/finalize".format(quote=sanitize_id(quote)),
base_address="api",
params=params,
options=options,
),
)
def pdf(
self,
quote: str,
params: Optional["QuotePdfParams"] = None,
options: Optional["RequestOptions"] = None,
) -> "Any":
"""
Download the PDF for a finalized quote. Explanation for special handling can be found [here](https://docs.stripe.com/quotes/overview#quote_pdf)
"""
return cast(
"Any",
self._request_stream(
"get",
"/v1/quotes/{quote}/pdf".format(quote=sanitize_id(quote)),
base_address="files",
params=params,
options=options,
),
)
async def pdf_async(
self,
quote: str,
params: Optional["QuotePdfParams"] = None,
options: Optional["RequestOptions"] = None,
) -> "Any":
"""
Download the PDF for a finalized quote. Explanation for special handling can be found [here](https://docs.stripe.com/quotes/overview#quote_pdf)
"""
return cast(
"Any",
await self._request_stream_async(
"get",
"/v1/quotes/{quote}/pdf".format(quote=sanitize_id(quote)),
base_address="files",
params=params,
options=options,
),
)