/** * MTKruto - Cross-runtime JavaScript library for building Telegram clients * Copyright (C) 2023-2026 Roj * * This file is part of MTKruto. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU Lesser General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public License * along with this program. If not, see . */ import { Api } from "../2_tl.js"; import { type ChatPhoto } from "./0_chat_photo.js"; import { type EmojiStatus } from "./0_emoji_status.js"; import { type RestrictionReason } from "./0_restriction_reason.js"; import { type UserStatus } from "./0_user_status.js"; import type { ChatPPrivate } from "./1_chat_p.js"; /** A user. */ export interface User { /** Unique identifier for this user or bot */ id: number; /** Identifier of color that can be displayed instead of the user's photo. */ color: number; /** Whether the user is a bot. */ isBot: boolean; /** The first name of the user. */ firstName: string; /** The last name of the user. */ lastName?: string; /** The user’s main username. */ username?: string; /** The user's phone number. */ phoneNumber?: string; /** The user's additional usernames. */ also?: string[]; /** The user's status. */ status?: UserStatus; /** The user's emoji status. */ emojiStatus?: EmojiStatus; /** The user's profile photo. */ photo?: ChatPhoto; /** The user's [IETF language tag](https://en.wikipedia.org/wiki/IETF_language_tag). */ languageCode?: string; /** Whether the user is the current user. */ isSelf: boolean; /** Whether the user has been deleted. */ isDeleted: boolean; /** Whether the user is a contact. */ isContact: boolean; /** Whether the user is a mutual contact. */ isMutualContact: boolean; /** Whether the user is a close friend. */ isCloseFriend: boolean; /** Whether the user has been identified as scam. */ isScam: boolean; /** Whether the user has been identified as an impersonator. */ isFake: boolean; /** Whether the user is subscribed to Telegram Premium. */ isPremium: boolean; /** Whether the user has been verified. */ isVerified: boolean; /** Whether the user is official support. */ isSupport: boolean; /** Whether the user has been restricted. */ isRestricted: boolean; /** The reason why the user has been restricted. */ restrictionReason?: RestrictionReason[]; /** Whether the user is a bot that has been added to the attachment menu by the current user. */ isAddedToAttachmentsMenu?: boolean; /** Whether the user is a bot that has a main mini app. */ hasMainMiniApp?: boolean; /** Whether the user is a bot that supports guest queries. */ isGuestQuerySupported?: boolean; } export declare function constructUser(user_: Api.user): User; export declare function constructUser2(chatP: ChatPPrivate): User; //# sourceMappingURL=2_user.d.ts.map