diff --git a/temp.ts b/temp.ts new file mode 100644 index 0000000..38531f2 --- /dev/null +++ b/temp.ts @@ -0,0 +1,400 @@ +////////apiTypes.ts + + + +export interface ResponseSuccess { + + data: any + + status: number + + statusText: string + +} + + + +export interface ResponseFailed { + + code: string + + message: string + + name: string + + response: { + + data: { + + error: string + + message: string + + statusCode: number + + } + + status: number + + statusText: string + + } + +} + + + + + +///////////////cryptoTypes.ts + + + +export enum RoleName { + + user = 'user', + + admin = 'admin', + +} + + + +export type Role = { + + id: string + + name: RoleName + + created_at?: string + + updated_at?: string + +} + + + +export type PromoCode = { + + id: string + + name: string + + value: number + +} + + + +export type CryptoHistory = { + + id: string + + id_crypto: string + + value: number + + created_at: string + + updated_at: string + +} + + + +export interface Offer { + + id: string + + User: { + + pseudo: string + + } + + amount: number + + created_at: string + + id_user: string + + Crypto: CryptoData + +} + + + +export interface UserAssets { + + firstName: string + + lastName: string + + dollarAvailables: number + + pseudo: string + + age: number + + UserHasCrypto: CryptoData[] + +} + + + +export interface Signin { + + access_token: string + + user: UserExtended + + Role: Role + +} + + + +export interface CryptoData { + + id: string + + name: string + + value: number + + image: string + + quantity: number + + created_at: string + + updated_at: string + +} + + + +export interface MyCryptoData { + + Crypto: CryptoData + + amount: number + + id: string + +} + + + +export interface Trade { + + Giver: User + + Receiver: User + + Crypto: CryptoData + + id: string + +} + + + +export interface User { + + firstName: string + + lastName: string + + pseudo: string + + dollarAvailables: number + +} + +export interface UserHasCrypto { + + id: string + + id_user: string + + id_crypto: string + + amount: number + + createdAt: string + + updated_at: string + + Crypto: CryptoData + +} + +export interface UserExtended extends User { + + id: string + + hash: string + + email: string + + roleId: string + + isActive: boolean + + city: string + + age: number + + created_at: string + + updated_at: string + + UserHasCrypto?: UserHasCrypto + +} + + + +export interface MyTrade { + + id: string + + id_giver: string + + id_receiver: string + + id_crypto: string + + amount_traded: number + + created_at: string + + updated_at: string + + Crypto: CryptoData + + Giver: UserExtended + + Receiver: UserExtended + +} + + + +export interface AuthData { + + access_token: string + + user: { + + id: string + + firstName: string + + lastName: string + + pseudo: string + + hash: null | any + + email: string + + roleId: string + + isActive: boolean + + city: string + + dollarAvailables: number + + age: number + + created_at: string + + updated_at: string + + UserHasCrypto: UserHasCrypto[] + + Role: Role + + } + +} + + + + + +////////////formTypes.ts + + + +export type RegisterInput = { + + firstName: string + + lastName: string + + pseudo: string + + city: string + + email: string + + password: string + + confirmPassword: string + + promoCode: string + + age: number + +} + + + +export type LoginInput = { + + email: string + + password: string + +} + + + +export type RoleInput = { + + name: string + +} + + + +export type PromoCodeInput = { + + name: string + + value: number + +} + + + +export type TradeInput = { + + id_offer: string + +} + + + +export type OfferInput = { + + id_crypto: string + + amount: number + +} +