@velvetta/types
v0.0.2
Published
types for velvettajs apps
Downloads
2
Readme
@velvetta/types 🟢
@velvetta/types
is a TypeScript types package providing reusable interfaces and types for various services and modules related to the velvettaJS
library and other components of your project. 🌱
Installation 🚀
To install this package, use npm or yarn. Make sure you have access to the registry if it's private.
# npm
npm install @velvetta/types
# pnpm
pnpm add @velvetta/types
# yarn
yarn add @velvetta/types
# bun
bun add @velvetta/types
Package Structure 📂
The package is organized into several type files divided into modules for better organization. Here’s how you can import and use these types in your project:
Available Types
Services 🔧
| Type | Description |
|-------------------|-------------------------------------|
| DatabaseOptions | Options for the database. |
| CdnOptions | Options for the CDN. |
| DbType | Type for the database using drizzle-orm
. |
Example
import { Services } from '@velvetta/types';
const dbOptions: Services.DatabaseOptions = {
dbUri: 'your-database-uri'
};
const cdnOptions: Services.CdnOptions = {
region: 'your-region',
endpoint: 'your-endpoint',
credentials: {
accessKeyId: 'your-access-key-id',
secretAccessKey: 'your-secret-access-key'
}
};
const db: Services.DbType = /* initialize your db */;
XVideos 📹
| Type | Description | |---------------------------|-------------------------------------------| | XVideosVideo | Information about XVideos video. | | XVideosPagination | Pagination data for XVideos. | | XVideosVideoDetails | Details of an XVideos video. | | XVideosFiles | Files related to the video. | | XVideosMainUploader | Information about the main uploader. | | XVideosModel | Information about models in XVideos videos. |
Example
import { XVideos } from '@velvetta/types';
const videoDetails: XVideos.XVideosVideoDetails = {
title: 'Example Video',
url: 'http://xvideos.com/video',
duration: 120,
description: 'An example video description',
image: 'http://xvideos.com/image.jpg',
views: '12345',
videoType: 'HD',
mainUploader: {
name: 'Uploader Name',
profileUrl: 'http://xvideos.com/uploader'
},
models: [
{
id: 'model-id',
name: 'Model Name',
profileUrl: 'http://xvideos.com/model'
}
],
tags: ['example', 'video'],
likePercentage: '75%',
dislikePercentage: '25%',
commentsCount: 10,
files: {
low: 'http://xvideos.com/video_low.mp4',
high: 'http://xvideos.com/video_high.mp4',
HLS: 'http://xvideos.com/video_hls.m3u8',
thumb: 'http://xvideos.com/thumb.jpg',
thumb69: 'http://xvideos.com/thumb69.jpg',
thumbSlide: 'http://xvideos.com/thumbSlide.jpg',
thumbSlideBig: 'http://xvideos.com/thumbSlideBig.jpg'
}
};
License 📝
This project is licensed under the MIT License.
This README.md
provides an overview of how to use the @velvetta/types
package, including examples of how to import and use the types in your project. 🌿