import { GetOrderSettingsRequest as GetOrderSettingsRequest$1, GetOrderSettingsResponse as GetOrderSettingsResponse$1, UpdateOrderSettingsRequest as UpdateOrderSettingsRequest$1, UpdateOrderSettingsResponse as UpdateOrderSettingsResponse$1, ListOrderSettingsRequest as ListOrderSettingsRequest$1, ListOrderSettingsResponse as ListOrderSettingsResponse$1 } from './index.js'; /** OrderSettings is the main entity of OrderSettings service */ interface OrderSettings { /** * Order Settings id * @format GUID * @immutable */ id?: string | null; /** * Restaurant location id * @format GUID */ restaurantLocationId?: string | null; /** Is Order settings enabled - customers can order through the system */ enabled?: boolean | null; /** if UOU need to provide a valid google maps address */ approximateAddresses?: ApproximateAddressesWithLiterals; /** Local regulations may require you to add a policy document to your site. */ policies?: Policies; tips?: Tips; futureOrders?: FutureOrdersSettings; /** Represents only exceptions of when the user wants to turn off the online ordering for a period of time */ availability?: Availability; /** @immutable */ revision?: string | null; /** Restaurant charge rounding strategy */ chargeRoundingStrategy?: ChargeRoundingStrategyWithLiterals; } declare enum ApproximateAddresses { EMPTY = "EMPTY", BLOCK = "BLOCK", ALLOW = "ALLOW" } /** @enumType */ type ApproximateAddressesWithLiterals = ApproximateAddresses | 'EMPTY' | 'BLOCK' | 'ALLOW'; /** Local regulations may require you to add a policy document to your site. */ interface Policies { /** Privacy policy */ privacyPolicy?: Policy; /** Terms and Conditions */ termsAndConditions?: Policy; /** Is the Policies feature enabled, default value false */ enabled?: boolean; /** Is the checkbox of the policy agreement marked by default */ checkedByDefault?: boolean | null; } interface Policy { /** Default Policy type */ defaultType?: TypeWithLiterals; text?: string | null; /** @format WEB_URL */ url?: string | null; } declare enum Type { /** Add a page to your site and put your policy document there. You can link to it from here. */ URL = "URL", /** The policy will be displayed as plain text in a popup. */ TEXT = "TEXT" } /** @enumType */ type TypeWithLiterals = Type | 'URL' | 'TEXT'; /** Customers can leave a tip when placing an order. */ interface Tips { /** Allow customers to leave a custom tips, default `false` */ allowCustom?: boolean | null; /** tip type to display */ displayType?: TipsTypeWithLiterals; /** * Set different tipping suggestion options with exact amounts, for your customers to choose from * @minSize 3 * @maxSize 3 */ suggestedAmounts?: TippingRate[]; /** * Set different tipping rate options with percentage values, for your customers to choose from * @minSize 3 * @maxSize 3 */ suggestedPercentages?: TippingRate[]; /** Is the Tips feature enabled, default value false */ enabled?: boolean; } declare enum TipsType { /** Tip with exact amount ($) */ AMOUNT = "AMOUNT", /** Tip in percentage */ PERCENTAGE = "PERCENTAGE" } /** @enumType */ type TipsTypeWithLiterals = TipsType | 'AMOUNT' | 'PERCENTAGE'; interface TippingRate { /** * Can be exact amount or percentage * @decimalValue options { maxScale:2 } */ value?: string; /** Is default option */ default?: boolean; } interface FutureOrdersSettings { /** Is Future Orders enabled */ enabled?: boolean | null; /** latest time in advance in minutes that customers can place an order */ latestOrderBy?: number | null; /** earliest time in advance in minutes that customers can place an order */ earliestOrderBy?: number | null; /** Allow asap orders or not. If false, only future orders are allowed */ enableAsapOrders?: boolean | null; } interface Availability { /** * Weekly recurring time periods when the entity is available. Limited to 100 time periods. * @maxSize 100 */ periods?: TimePeriod[]; /** * Exceptions to the entity's regular availability. The entity can be available or not available during the special hour period. * @maxSize 100 */ specialHourPeriods?: SpecialHourPeriod[]; } /** Weekly recurring time periods when the entity is available. */ interface TimePeriod { /** Day of the week the period starts on. */ openDay?: DayOfWeekWithLiterals; /** * Time the period starts in 24-hour [ISO 8601](https:en.wikipedia.orgwikiISO_8601) extended format. Valid values are 00:00-24:00, where 24:00 represents * midnight at the end of the specified day. */ openTime?: string; /** Day of the week the period ends on. */ closeDay?: DayOfWeekWithLiterals; /** * Time the period ends in 24-hour [ISO 8601](https:en.wikipedia.orgwikiISO_8601) extended format. Valid values are 00:00-24:00, where 24:00 represents * midnight at the end of the specified day. * __Note:__ If `openDay` and `closeDay` specify the same day of the week `closeTime` must be later than `openTime`. */ closeTime?: string; } declare enum DayOfWeek { MON = "MON", TUE = "TUE", WED = "WED", THU = "THU", FRI = "FRI", SAT = "SAT", SUN = "SUN" } /** @enumType */ type DayOfWeekWithLiterals = DayOfWeek | 'MON' | 'TUE' | 'WED' | 'THU' | 'FRI' | 'SAT' | 'SUN'; /** Exception to the business's regular hours. The business can be open or closed during the exception. */ interface SpecialHourPeriod { /** Start date and time of the exception in [ISO 8601](https:en.wikipedia.orgwikiISO_8601) format and [Coordinated Universal Time (UTC)](https:en.wikipedia.orgwikiCoordinated_Universal_Time). */ startDate?: string; /** End date and time of the exception in [ISO 8601](https:en.wikipedia.orgwikiISO_8601) format and [Coordinated Universal Time (UTC)](https:en.wikipedia.orgwikiCoordinated_Universal_Time). */ endDate?: string; /** Whether the item is available during the exception. Defaults to `false`. */ available?: boolean; /** Name of the special hour period. In the Business Manager the special hour period is called event. */ eventName?: string | null; } declare enum ChargeRoundingStrategy { UNDEFINED = "UNDEFINED", /** https://en.wikipedia.org/wiki/Rounding#Round_half_away_from_zero */ HALF_AWAY_FROM_ZERO = "HALF_AWAY_FROM_ZERO", /** https://en.wikipedia.org/wiki/Rounding#Round_half_to_even */ HALF_EVEN = "HALF_EVEN" } /** @enumType */ type ChargeRoundingStrategyWithLiterals = ChargeRoundingStrategy | 'UNDEFINED' | 'HALF_AWAY_FROM_ZERO' | 'HALF_EVEN'; interface GetOrderSettingsRequest { /** * Id of the OrderSettings to retrieve * @format GUID */ orderSettingsId: string; } interface GetOrderSettingsResponse { /** The retrieved OrderSettings */ orderSettings?: OrderSettings; } interface UpdateOrderSettingsRequest { /** OrderSettings to be updated, may be partial */ orderSettings: OrderSettings; } interface UpdateOrderSettingsResponse { /** The updated OrderSettings */ orderSettings?: OrderSettings; } interface ListOrderSettingsRequest { /** * Ids of the restaurant locations for the OrderSettings to retrieve * @format GUID */ restaurantLocationIds?: string[]; } interface ListOrderSettingsResponse { /** The retrieved order settings */ orderSettings?: OrderSettings[]; } type __PublicMethodMetaInfo = { getUrl: (context: any) => string; httpMethod: K; path: string; pathParams: M; __requestType: T; __originalRequestType: S; __responseType: Q; __originalResponseType: R; }; declare function getOrderSettings(): __PublicMethodMetaInfo<'GET', { orderSettingsId: string; }, GetOrderSettingsRequest$1, GetOrderSettingsRequest, GetOrderSettingsResponse$1, GetOrderSettingsResponse>; declare function updateOrderSettings(): __PublicMethodMetaInfo<'PATCH', { orderSettingsId: string; }, UpdateOrderSettingsRequest$1, UpdateOrderSettingsRequest, UpdateOrderSettingsResponse$1, UpdateOrderSettingsResponse>; declare function listOrderSettings(): __PublicMethodMetaInfo<'GET', {}, ListOrderSettingsRequest$1, ListOrderSettingsRequest, ListOrderSettingsResponse$1, ListOrderSettingsResponse>; export { ApproximateAddresses as ApproximateAddressesOriginal, type ApproximateAddressesWithLiterals as ApproximateAddressesWithLiteralsOriginal, type Availability as AvailabilityOriginal, ChargeRoundingStrategy as ChargeRoundingStrategyOriginal, type ChargeRoundingStrategyWithLiterals as ChargeRoundingStrategyWithLiteralsOriginal, DayOfWeek as DayOfWeekOriginal, type DayOfWeekWithLiterals as DayOfWeekWithLiteralsOriginal, type FutureOrdersSettings as FutureOrdersSettingsOriginal, type GetOrderSettingsRequest as GetOrderSettingsRequestOriginal, type GetOrderSettingsResponse as GetOrderSettingsResponseOriginal, type ListOrderSettingsRequest as ListOrderSettingsRequestOriginal, type ListOrderSettingsResponse as ListOrderSettingsResponseOriginal, type OrderSettings as OrderSettingsOriginal, type Policies as PoliciesOriginal, type Policy as PolicyOriginal, type SpecialHourPeriod as SpecialHourPeriodOriginal, type TimePeriod as TimePeriodOriginal, type TippingRate as TippingRateOriginal, type Tips as TipsOriginal, TipsType as TipsTypeOriginal, type TipsTypeWithLiterals as TipsTypeWithLiteralsOriginal, Type as TypeOriginal, type TypeWithLiterals as TypeWithLiteralsOriginal, type UpdateOrderSettingsRequest as UpdateOrderSettingsRequestOriginal, type UpdateOrderSettingsResponse as UpdateOrderSettingsResponseOriginal, type __PublicMethodMetaInfo, getOrderSettings, listOrderSettings, updateOrderSettings };