/// /// /// import type { Stream } from 'node:stream'; import type { CursorPaginationEnabled, LocaleAware, OptionalTeamAssignable, TokenOverridable } from './common'; interface Email { /** @description An email address belonging to a user in the workspace */ email: string; } export interface UsersConversationsArguments extends TokenOverridable, CursorPaginationEnabled, OptionalTeamAssignable { /** @description Set to `true` to exclude archived channels from the list. Default is `false`. */ exclude_archived?: boolean; /** * @description Mix and match channel types by providing a comma-separated list of any combination of * `public_channel`, `private_channel`, `mpim` and `im`. Defaults to `public_channel`. */ types?: string; /** * @description Browse conversations by a specific user ID's membership. * Non-public channels are restricted to those where the calling user shares membership. */ user?: string; } export interface UsersDeletePhotoArguments extends TokenOverridable { } export interface UsersDiscoverableContactsLookupArguments extends Email, TokenOverridable { } export interface UsersGetPresenceArguments extends TokenOverridable { /** @description User to get presence info on. Defaults to the authed user. */ user?: string; } export interface UsersIdentityArguments extends TokenOverridable { } export interface UsersInfoArguments extends TokenOverridable, LocaleAware { /** @description User to get info on. */ user: string; } export interface UsersListArguments extends TokenOverridable, CursorPaginationEnabled, LocaleAware, OptionalTeamAssignable { } export interface UsersLookupByEmailArguments extends Email, TokenOverridable { } export interface UsersSetPhotoArguments extends TokenOverridable { /** @description Image file contents. */ image: Buffer | Stream; /** @description Width/height of crop box (always square). */ crop_w?: number; /** @description X coordinate of top-left corner of crop box. */ crop_x?: number; /** @description Y coordinate of top-left corner of crop box. */ crop_y?: number; } export interface UsersSetPresenceArguments extends TokenOverridable { /** @description Either `auto` or `away`. */ presence: 'auto' | 'away'; } export interface UsersProfileGetArguments extends TokenOverridable { /** * @description Include labels for each ID in custom profile fields. * Using this parameter will heavily rate-limit your requests and is not recommended. Defaults to `false`. */ include_labels?: boolean; /** @description User to retrieve profile info for. */ user?: string; } export interface UsersProfileSetArguments extends TokenOverridable { /** * @description Sets profile fields using a single argument. * Collection of key:value pairs presented. * At most 50 fields may be set. Each field name is limited to 255 characters. * @see {@link https://api.slack.com/methods/users.profile.set#profile-fields `users.profile.set` Profile fields usage info}. */ profile?: Record; /** @description ID of user to change. This argument may only be specified by admins on paid teams. */ user?: string; /** * @description Name of a single profile field to set. If both `name` and `profile` are set, `name` takes precedence. * @see {@link https://api.slack.com/methods/users.profile.set#profile-fields `users.profile.set` Profile fields usage info}. */ name?: string; /** * @description Value to set for the profile field specified by `name`. Usable only if profile is not passed. * @see {@link https://api.slack.com/methods/users.profile.set#profile-fields `users.profile.set` Profile fields usage info}. */ value?: string; } export {}; //# sourceMappingURL=users.d.ts.map