@aidarkezio/main-func
Version:
📦 It has my funcs
250 lines (226 loc) • 6.52 kB
text/typescript
import { z } from 'zod'
import { ERROR_ARGS } from '../constant.js'
export const WikipediaArgsSchema = z.object({
0: z.string(ERROR_ARGS.QUERY),
1: z.string()
})
export const WikipediaSchema = z.object({
title: z.string(),
img: z.string().url(),
articles: z.string()
})
export type WikipediaArgs = z.infer<typeof WikipediaArgsSchema>
export type Wikipedia = z.infer<typeof WikipediaSchema>
export const ResultJadwalTVSchema = z.object({
date: z.string(),
event: z.string()
})
export const JadwalTVArgsSchema = z.object({
0: z.string(ERROR_ARGS.QUERY)
})
export const JadwalTVSchema = z.object({
channel: z.string(),
result: ResultJadwalTVSchema.array()
})
export const JadwalTVNOWSchema = z.record(ResultJadwalTVSchema.array())
export type ResultJadwalTV = z.infer<typeof ResultJadwalTVSchema>
export type JadwalTVArgs = z.infer<typeof JadwalTVArgsSchema>
export type JadwalTV = z.infer<typeof JadwalTVSchema>
export type JadwalTVNOW = z.infer<typeof JadwalTVNOWSchema>
export const MediafireArgsSchema = z.object({
0: z.string(ERROR_ARGS.URL).url()
})
export const MediafireSchema = z.object({
url: z.string().url(),
url2: z.string().url(),
filename: z.string(),
filetype: z.string(),
ext: z.string(),
aploud: z.string(),
filesizeH: z.string(),
filesize: z.number()
})
export type Mediafire = z.infer<typeof MediafireSchema>
export const IBMKGSchema = z.object({
date: z.string(),
magnitude: z.string(),
depth: z.string(),
location: z.string()
})
export const GempaSchema = z.object({
locate: z.string(),
warning: z.string().array()
}).and(IBMKGSchema)
export const GempaNowSchema = z.object({
latitude: z.string(),
longitude: z.string()
}).and(IBMKGSchema)
export const TsunamiSchema = z.object({
locate: z.string()
}).and(IBMKGSchema)
export type IBMKG = z.infer<typeof IBMKGSchema>
export type Gempa = z.infer<typeof GempaSchema>
export type GempaNow = z.infer<typeof GempaNowSchema>
export type Tsunami = z.infer<typeof TsunamiSchema>
export const LyricsArgsSchema = z.object({
0: z.string(ERROR_ARGS.QUERY)
})
export const LyricsSchema = z.object({
title: z.string(),
author: z.string(),
lyrics: z.string(),
link: z.string()
})
export type LyricsArgs = z.infer<typeof LyricsArgsSchema>
export type Lyrics = z.infer<typeof LyricsSchema>
export const KbbiArgsSchema = z.object({
0: z.string(ERROR_ARGS.QUERY)
})
export const KbbiSchema = z.object({
index: z.number(),
title: z.string(),
means: z.string().array().min(1)
})
export type KbbiArgs = z.infer<typeof KbbiArgsSchema>
export type Kbbi = z.infer<typeof KbbiSchema>
export const MinecraftJavaArgsSchema = z.object({
0: z.string(ERROR_ARGS.IP),
1: z.number(ERROR_ARGS.PORT).min(0).max(65535),
2: z.object({
timeout: z.number().optional()
}).optional()
})
export const IMinecraftResponseSchema = z.object({
description: z.object({
extra: z.object({
color: z.string(),
text: z.string(),
bold: z.boolean().optional()
}).array(),
text: z.string()
}),
players: z.object({
max: z.number(),
online: z.number(),
sample: z.object({
name: z.string(),
id: z.string()
}).array()
}),
version: z.object({
name: z.string(),
protocol: z.number()
}),
favicon: z.string()
})
export const MinecraftJavaSchema = z.object({
ip: z.string(),
port: z.number(),
description: z.string(),
descriptionText: z.string(),
players: z.object({
max: z.number(),
online: z.number(),
sample: z.string().array()
}),
version: z.object({
name: z.string(),
protocol: z.number()
}),
favicon: z.string().optional(),
ping: z.number(),
originalResponse: IMinecraftResponseSchema
})
export type IMinecraftResponse = z.infer<typeof IMinecraftResponseSchema>
export type MinecraftJava = z.infer<typeof MinecraftJavaSchema>
export const NameFreeFireArgsSchema = z.object({
0: z.string().or(z.number())
})
export const NameFreeFireSchema = z.object({
id: z.string(),
username: z.string()
})
export type NameFreeFireArgs = z.infer<typeof NameFreeFireArgsSchema>
export type NameFreeFire = z.infer<typeof NameFreeFireSchema>
export const BioskopNowSchema = z.object({
title: z.string(),
img: z.string().url(),
url: z.string().url(),
genre: z.string(),
duration: z.string(),
playingAt: z.string()
})
export const BioskopArgsSchema = z.object({
0: z.number().or(z.string()).optional()
})
export const BioskopSchema = z.object({
title: z.string(),
img: z.string().url(),
url: z.string().url(),
genre: z.string(),
duration: z.string(),
release: z.string(),
director: z.string(),
cast: z.string()
})
export type BioskopNow = z.infer<typeof BioskopNowSchema>
export type BioskopArgs = z.infer<typeof BioskopArgsSchema>
export type Bioskop = z.infer<typeof BioskopSchema>
export const ChordArgsSchema = z.object({
0: z.string(ERROR_ARGS.QUERY)
})
export const ChordSchema = z.object({
url: z.string().url(),
artist: z.string(),
artistUrl: z.string().url().or(z.string()),
title: z.string(),
chord: z.string()
})
export type ChordArgs = z.infer<typeof ChordArgsSchema>
export type Chord = z.infer<typeof ChordSchema>
export const ZippyShareArgsSchema = z.object({
0: z.string(ERROR_ARGS.URL).url()
})
export const ZippyShareSchema = z.object({
url: z.string().url(),
// url2: z.string().url(),
filename: z.string(),
filesizeH: z.string(),
filesize: z.number(),
aploud: z.string(),
lastDownload: z.string()
})
export type ZippyShareArgs = z.infer<typeof ZippyShareArgsSchema>
export type ZippyShare = z.infer<typeof ZippyShareSchema>
export const SfileMobiSearchArgsSchema = z.object({
0: z.string(ERROR_ARGS.QUERY),
1: z.number().min(0).optional()
})
export const SfileMobiSearchSchema = z.object({
url: z.string().url(),
filename: z.string(),
icon: z.string().url(),
type: z.string(),
filesizeH: z.string(),
filesize: z.number()
})
export const SfileMobiArgsSchema = z.object({
0: z.string(ERROR_ARGS.URL).url()
})
export const SfileMobiSchema = z.object({
url: z.string().url(),
filename: z.string(),
icon: z.string(),
type: z.string(),
mimetype: z.string(),
aploud: z.string(),
aploudby: z.string(),
aploudbyUrl: z.string().url(),
aploudon: z.string(),
aploudonUrl: z.string().url(),
downloads: z.number(),
filesizeH: z.string(),
filesize: z.number()
})
export type SfileMobiSearch = z.infer<typeof SfileMobiSearchSchema>
export type SfileMobi = z.infer<typeof SfileMobiSchema>