import { ListTippableStaffRequest as ListTippableStaffRequest$1, ListTippableStaffResponse as ListTippableStaffResponse$1 } from './index.typings.js'; import '@wix/sdk-types'; /** * Information about a team member who's eligible to receive a portion of the tip. * Currently, only Bookings staff members ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/staff-members/introduction) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/staff-members/staff-member-object)) * and [site collaborators](https://support.wix.com/en/article/inviting-people-to-contribute-to-your-site) * are eligible for tip distributions. */ interface Staff { /** * Staff ID. Matches `staffMemberId` if available, or * `identificationData.wixUserId` if not. * @format GUID * @readonly */ id?: string | null; /** * Staff name. Matches the name of the * Bookings staff member ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/staff-members/introduction) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/staff-members/staff-member-object)), * if available. * @maxLength 500 */ name?: string | null; /** * Staff member ID. Available only if the staff is connected to a * Bookings staff member ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/staff-members/introduction) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/staff-members/staff-member-object)). * @format GUID */ staffMemberId?: string | null; /** * Identification data of the staff. Available only if the staff is a * [site collaborator](https://support.wix.com/en/article/inviting-people-to-contribute-to-your-site). */ identificationData?: IdentificationData; } interface IdentificationData extends IdentificationDataIdOneOf { /** * ID of a site visitor who hasn't logged in to the site. * @format GUID */ anonymousVisitorId?: string; /** * ID of a site visitor who has logged in to the site. * @format GUID */ memberId?: string; /** * ID of a Wix user. For example, the site owner or a * [site collaborator](https://support.wix.com/en/article/inviting-people-to-contribute-to-your-site). * @format GUID */ wixUserId?: string; /** * ID of an app. * @format GUID */ appId?: string; /** * ID of the contact in the site's [CRM by Ascend](https://www.wix.com/ascend/crm) system. * See the Contacts API for additional details. * @format GUID */ contactId?: string | null; } /** @oneof */ interface IdentificationDataIdOneOf { /** * ID of a site visitor who hasn't logged in to the site. * @format GUID */ anonymousVisitorId?: string; /** * ID of a site visitor who has logged in to the site. * @format GUID */ memberId?: string; /** * ID of a Wix user. For example, the site owner or a * [site collaborator](https://support.wix.com/en/article/inviting-people-to-contribute-to-your-site). * @format GUID */ wixUserId?: string; /** * ID of an app. * @format GUID */ appId?: string; } declare enum IdentityType { UNKNOWN = "UNKNOWN", ANONYMOUS_VISITOR = "ANONYMOUS_VISITOR", MEMBER = "MEMBER", WIX_USER = "WIX_USER", APP = "APP" } /** @enumType */ type IdentityTypeWithLiterals = IdentityType | 'UNKNOWN' | 'ANONYMOUS_VISITOR' | 'MEMBER' | 'WIX_USER' | 'APP'; interface ListTippableStaffRequest { /** * Whether to include staff who are only Wix users and not * Bookings staff members ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/staff-members/introduction) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/staff-members/staff-member-object)) * in the response. Setting `{"includeWixUsers": true}` returns all tippable * staff, including Bookings staff, site collaborators, or those who are both. * By default, or if you provide `{"includeWixUsers": false}`, only Bookings * staff members or those who are both are returned. * * Default: `false`. */ includeWixUsers?: boolean; /** * Filters the returned staff by name. If you provide a name as filter, only * staff whose names start with the given input are returned. The filter isn't * case sensitive. * * Max: 500 characters * @maxLength 500 */ filterByName?: string | null; /** * Filters the returned staff by ID. If you provide a list of IDs as filter, * only staff members with exact matching IDs are returned. * * Max: 100 IDs * @maxSize 100 * @format GUID */ filterByIds?: string[] | null; } interface ListTippableStaffResponse { /** * Retrieved staff. * @maxSize 100 */ staff?: Staff[]; } type __PublicMethodMetaInfo = { getUrl: (context: any) => string; httpMethod: K; path: string; pathParams: M; __requestType: T; __originalRequestType: S; __responseType: Q; __originalResponseType: R; }; declare function listTippableStaff(): __PublicMethodMetaInfo<'GET', {}, ListTippableStaffRequest$1, ListTippableStaffRequest, ListTippableStaffResponse$1, ListTippableStaffResponse>; export { type IdentificationDataIdOneOf as IdentificationDataIdOneOfOriginal, type IdentificationData as IdentificationDataOriginal, IdentityType as IdentityTypeOriginal, type IdentityTypeWithLiterals as IdentityTypeWithLiteralsOriginal, type ListTippableStaffRequest as ListTippableStaffRequestOriginal, type ListTippableStaffResponse as ListTippableStaffResponseOriginal, type Staff as StaffOriginal, type __PublicMethodMetaInfo, listTippableStaff };