diff options
Diffstat (limited to 'vendor/github.com/go-telegram-bot-api/telegram-bot-api/v5/passport.go')
-rw-r--r-- | vendor/github.com/go-telegram-bot-api/telegram-bot-api/v5/passport.go | 317 |
1 files changed, 0 insertions, 317 deletions
diff --git a/vendor/github.com/go-telegram-bot-api/telegram-bot-api/v5/passport.go b/vendor/github.com/go-telegram-bot-api/telegram-bot-api/v5/passport.go deleted file mode 100644 index 4fedb965..00000000 --- a/vendor/github.com/go-telegram-bot-api/telegram-bot-api/v5/passport.go +++ /dev/null @@ -1,317 +0,0 @@ -package tgbotapi - -// PassportRequestInfoConfig allows you to request passport info -type PassportRequestInfoConfig struct { - BotID int `json:"bot_id"` - Scope *PassportScope `json:"scope"` - Nonce string `json:"nonce"` - PublicKey string `json:"public_key"` -} - -// PassportScopeElement supports using one or one of several elements. -type PassportScopeElement interface { - ScopeType() string -} - -// PassportScope is the requested scopes of data. -type PassportScope struct { - V int `json:"v"` - Data []PassportScopeElement `json:"data"` -} - -// PassportScopeElementOneOfSeveral allows you to request any one of the -// requested documents. -type PassportScopeElementOneOfSeveral struct { -} - -// ScopeType is the scope type. -func (eo *PassportScopeElementOneOfSeveral) ScopeType() string { - return "one_of" -} - -// PassportScopeElementOne requires the specified element be provided. -type PassportScopeElementOne struct { - Type string `json:"type"` // One of “personal_details”, “passport”, “driver_license”, “identity_card”, “internal_passport”, “address”, “utility_bill”, “bank_statement”, “rental_agreement”, “passport_registration”, “temporary_registration”, “phone_number”, “email” - Selfie bool `json:"selfie"` - Translation bool `json:"translation"` - NativeNames bool `json:"native_name"` -} - -// ScopeType is the scope type. -func (eo *PassportScopeElementOne) ScopeType() string { - return "one" -} - -type ( - // PassportData contains information about Telegram Passport data shared with - // the bot by the user. - PassportData struct { - // Array with information about documents and other Telegram Passport - // elements that was shared with the bot - Data []EncryptedPassportElement `json:"data"` - - // Encrypted credentials required to decrypt the data - Credentials *EncryptedCredentials `json:"credentials"` - } - - // PassportFile represents a file uploaded to Telegram Passport. Currently, all - // Telegram Passport files are in JPEG format when decrypted and don't exceed - // 10MB. - PassportFile struct { - // Unique identifier for this file - FileID string `json:"file_id"` - - FileUniqueID string `json:"file_unique_id"` - - // File size - FileSize int `json:"file_size"` - - // Unix time when the file was uploaded - FileDate int64 `json:"file_date"` - } - - // EncryptedPassportElement contains information about documents or other - // Telegram Passport elements shared with the bot by the user. - EncryptedPassportElement struct { - // Element type. - Type string `json:"type"` - - // Base64-encoded encrypted Telegram Passport element data provided by - // the user, available for "personal_details", "passport", - // "driver_license", "identity_card", "identity_passport" and "address" - // types. Can be decrypted and verified using the accompanying - // EncryptedCredentials. - Data string `json:"data,omitempty"` - - // User's verified phone number, available only for "phone_number" type - PhoneNumber string `json:"phone_number,omitempty"` - - // User's verified email address, available only for "email" type - Email string `json:"email,omitempty"` - - // Array of encrypted files with documents provided by the user, - // available for "utility_bill", "bank_statement", "rental_agreement", - // "passport_registration" and "temporary_registration" types. Files can - // be decrypted and verified using the accompanying EncryptedCredentials. - Files []PassportFile `json:"files,omitempty"` - - // Encrypted file with the front side of the document, provided by the - // user. Available for "passport", "driver_license", "identity_card" and - // "internal_passport". The file can be decrypted and verified using the - // accompanying EncryptedCredentials. - FrontSide *PassportFile `json:"front_side,omitempty"` - - // Encrypted file with the reverse side of the document, provided by the - // user. Available for "driver_license" and "identity_card". The file can - // be decrypted and verified using the accompanying EncryptedCredentials. - ReverseSide *PassportFile `json:"reverse_side,omitempty"` - - // Encrypted file with the selfie of the user holding a document, - // provided by the user; available for "passport", "driver_license", - // "identity_card" and "internal_passport". The file can be decrypted - // and verified using the accompanying EncryptedCredentials. - Selfie *PassportFile `json:"selfie,omitempty"` - } - - // EncryptedCredentials contains data required for decrypting and - // authenticating EncryptedPassportElement. See the Telegram Passport - // Documentation for a complete description of the data decryption and - // authentication processes. - EncryptedCredentials struct { - // Base64-encoded encrypted JSON-serialized data with unique user's - // payload, data hashes and secrets required for EncryptedPassportElement - // decryption and authentication - Data string `json:"data"` - - // Base64-encoded data hash for data authentication - Hash string `json:"hash"` - - // Base64-encoded secret, encrypted with the bot's public RSA key, - // required for data decryption - Secret string `json:"secret"` - } - - // PassportElementError represents an error in the Telegram Passport element - // which was submitted that should be resolved by the user. - PassportElementError interface{} - - // PassportElementErrorDataField represents an issue in one of the data - // fields that was provided by the user. The error is considered resolved - // when the field's value changes. - PassportElementErrorDataField struct { - // Error source, must be data - Source string `json:"source"` - - // The section of the user's Telegram Passport which has the error, one - // of "personal_details", "passport", "driver_license", "identity_card", - // "internal_passport", "address" - Type string `json:"type"` - - // Name of the data field which has the error - FieldName string `json:"field_name"` - - // Base64-encoded data hash - DataHash string `json:"data_hash"` - - // Error message - Message string `json:"message"` - } - - // PassportElementErrorFrontSide represents an issue with the front side of - // a document. The error is considered resolved when the file with the front - // side of the document changes. - PassportElementErrorFrontSide struct { - // Error source, must be front_side - Source string `json:"source"` - - // The section of the user's Telegram Passport which has the issue, one - // of "passport", "driver_license", "identity_card", "internal_passport" - Type string `json:"type"` - - // Base64-encoded hash of the file with the front side of the document - FileHash string `json:"file_hash"` - - // Error message - Message string `json:"message"` - } - - // PassportElementErrorReverseSide represents an issue with the reverse side - // of a document. The error is considered resolved when the file with reverse - // side of the document changes. - PassportElementErrorReverseSide struct { - // Error source, must be reverse_side - Source string `json:"source"` - - // The section of the user's Telegram Passport which has the issue, one - // of "driver_license", "identity_card" - Type string `json:"type"` - - // Base64-encoded hash of the file with the reverse side of the document - FileHash string `json:"file_hash"` - - // Error message - Message string `json:"message"` - } - - // PassportElementErrorSelfie represents an issue with the selfie with a - // document. The error is considered resolved when the file with the selfie - // changes. - PassportElementErrorSelfie struct { - // Error source, must be selfie - Source string `json:"source"` - - // The section of the user's Telegram Passport which has the issue, one - // of "passport", "driver_license", "identity_card", "internal_passport" - Type string `json:"type"` - - // Base64-encoded hash of the file with the selfie - FileHash string `json:"file_hash"` - - // Error message - Message string `json:"message"` - } - - // PassportElementErrorFile represents an issue with a document scan. The - // error is considered resolved when the file with the document scan changes. - PassportElementErrorFile struct { - // Error source, must be a file - Source string `json:"source"` - - // The section of the user's Telegram Passport which has the issue, one - // of "utility_bill", "bank_statement", "rental_agreement", - // "passport_registration", "temporary_registration" - Type string `json:"type"` - - // Base64-encoded file hash - FileHash string `json:"file_hash"` - - // Error message - Message string `json:"message"` - } - - // PassportElementErrorFiles represents an issue with a list of scans. The - // error is considered resolved when the list of files containing the scans - // changes. - PassportElementErrorFiles struct { - // Error source, must be files - Source string `json:"source"` - - // The section of the user's Telegram Passport which has the issue, one - // of "utility_bill", "bank_statement", "rental_agreement", - // "passport_registration", "temporary_registration" - Type string `json:"type"` - - // List of base64-encoded file hashes - FileHashes []string `json:"file_hashes"` - - // Error message - Message string `json:"message"` - } - - // Credentials contains encrypted data. - Credentials struct { - Data SecureData `json:"secure_data"` - // Nonce the same nonce given in the request - Nonce string `json:"nonce"` - } - - // SecureData is a map of the fields and their encrypted values. - SecureData map[string]*SecureValue - // PersonalDetails *SecureValue `json:"personal_details"` - // Passport *SecureValue `json:"passport"` - // InternalPassport *SecureValue `json:"internal_passport"` - // DriverLicense *SecureValue `json:"driver_license"` - // IdentityCard *SecureValue `json:"identity_card"` - // Address *SecureValue `json:"address"` - // UtilityBill *SecureValue `json:"utility_bill"` - // BankStatement *SecureValue `json:"bank_statement"` - // RentalAgreement *SecureValue `json:"rental_agreement"` - // PassportRegistration *SecureValue `json:"passport_registration"` - // TemporaryRegistration *SecureValue `json:"temporary_registration"` - - // SecureValue contains encrypted values for a SecureData item. - SecureValue struct { - Data *DataCredentials `json:"data"` - FrontSide *FileCredentials `json:"front_side"` - ReverseSide *FileCredentials `json:"reverse_side"` - Selfie *FileCredentials `json:"selfie"` - Translation []*FileCredentials `json:"translation"` - Files []*FileCredentials `json:"files"` - } - - // DataCredentials contains information required to decrypt data. - DataCredentials struct { - // DataHash checksum of encrypted data - DataHash string `json:"data_hash"` - // Secret of encrypted data - Secret string `json:"secret"` - } - - // FileCredentials contains information required to decrypt files. - FileCredentials struct { - // FileHash checksum of encrypted data - FileHash string `json:"file_hash"` - // Secret of encrypted data - Secret string `json:"secret"` - } - - // PersonalDetails https://core.telegram.org/passport#personaldetails - PersonalDetails struct { - FirstName string `json:"first_name"` - LastName string `json:"last_name"` - MiddleName string `json:"middle_name"` - BirthDate string `json:"birth_date"` - Gender string `json:"gender"` - CountryCode string `json:"country_code"` - ResidenceCountryCode string `json:"residence_country_code"` - FirstNameNative string `json:"first_name_native"` - LastNameNative string `json:"last_name_native"` - MiddleNameNative string `json:"middle_name_native"` - } - - // IDDocumentData https://core.telegram.org/passport#iddocumentdata - IDDocumentData struct { - DocumentNumber string `json:"document_no"` - ExpiryDate string `json:"expiry_date"` - } -) |