@openstream/client
Version:
Openstream Radio Server Client
231 lines • 23.2 kB
TypeScript
/// <reference types="node" />
/// <reference types="node" />
import type { Readable } from "stream";
import { ClientError, type ClientErrorCode } from "./error.js";
import node_fetch, { Headers } from "node-fetch";
import type { Response, RequestInit } from "node-fetch";
export { ClientError, type ClientErrorCode };
export declare class Client {
private base_url;
private node_fetch;
me: Me;
auth: Auth;
plans: Plans;
admins: Admins;
users: Users;
accounts: Accounts;
stations: Stations;
analytics: Analytics;
app_analytics: AppAnalytics;
invitations: AccountInvitations;
payment_methods: PaymentMethods;
stream_connections: StreamConnections;
stream_connections_lite: StreamConnectionsLite;
constructor(base_url: string, { /*ogger,*/ fetch }?: {
fetch?: typeof node_fetch;
});
fetch(_url: string, init?: RequestInit): Promise<Response>;
get_json_body<T>(res: Response): Promise<T>;
json_headers({ ip, ua, token, wpayload }: {
ip: string | null;
ua: string | null;
token: string | null;
wpayload: boolean;
}): Headers;
json_request<T>(url: string, init: RequestInit): Promise<T>;
get<T>(ip: string | null, ua: string | null, token: string | null, url: string): Promise<T>;
delete<T>(ip: string | null, ua: string | null, token: string | null, url: string): Promise<T>;
post<T>(ip: string | null, ua: string | null, token: string | null, url: string, payload: any): Promise<T>;
put<T>(ip: string | null, ua: string | null, token: string | null, url: string, payload: any): Promise<T>;
patch<T>(ip: string | null, ua: string | null, token: string | null, url: string, payload: any): Promise<T>;
get_stream_stats(ip: string | null, ua: string | null, token: string): Promise<import("./defs/api/stream-stats/GET/Output.js").Output>;
get_stream_stats_item_now(ip: string | null, ua: string | null, token: string): Promise<import("./defs/api/stream-stats/now/GET/Output.js").Output>;
get_stream_stats_item_now_count(ip: string | null, ua: string | null, token: string): Promise<import("./defs/api/stream-stats/now/count/GET/Output.js").Output>;
get_stream_stats_now_count_by_station(ip: string | null, ua: string | null, token: string): Promise<import("./defs/api/stream-stats/now/count-by-station/GET/Output.js").Output>;
get_stream_stats_item_since(ip: string | null, ua: string | null, token: string, num: number | string, unit: string): Promise<import("./defs/api/stream-stats/[last-unitvalue]/GET/Output.js").Output>;
get_stream_stats_item_since_count(ip: string | null, ua: string | null, token: string, num: number | string, unit: string): Promise<import("./defs/api/stream-stats/[last-unitvalue]/count/GET/Output.js").Output>;
}
export declare class Me {
client: Client;
devices: MeDevices;
api_keys: MeApiKeys;
constructor(client: Client);
me(ip: string | null, ua: string | null, token: string): Promise<import("./defs/api/me/GET/Output.js").Output>;
}
export declare class MeDevices {
client: Client;
constructor(client: Client);
list(ip: string | null, ua: string | null, token: string, query: import("./defs/api/me/devices/GET/Query.js").Query): Promise<import("./defs/api/me/devices/GET/Output.js").Output>;
delete(ip: string | null, ua: string | null, token: string, id: string): Promise<import("./defs/api/me/devices/[device]/DELETE/Output.js").Output>;
}
export declare class MeApiKeys {
client: Client;
constructor(client: Client);
list(ip: string | null, ua: string | null, token: string, query: import("./defs/api/me/api-keys/GET/Query.js").Query): Promise<import("./defs/api/me/devices/GET/Output.js").Output>;
post(ip: string | null, ua: string | null, token: string, payload: import("./defs/api/me/api-keys/POST/Payload.js").Payload): Promise<import("./defs/api/me/api-keys/POST/Output.js").Output>;
patch(ip: string | null, ua: string | null, token: string, id: string, payload: import("./defs/api/me/api-keys/[id]/PATCH/Payload.js").Payload): Promise<import("./defs/api/me/api-keys/[id]/PATCH/Output.js").Output>;
delete(ip: string | null, ua: string | null, token: string, id: string): Promise<import("./defs/api/me/api-keys/[id]/DELETE/Output.js").Output>;
}
export declare class Auth {
client: Client;
user: AuthUser;
admin: AuthAdmin;
constructor(client: Client);
send_email_verification_code(ip: string | null, ua: string | null, payload: import("./defs/api/auth/email-verification/send-code/POST/Payload.js").Payload): Promise<import("./defs/api/auth/email-verification/send-code/POST/Output.js").Output>;
}
export declare class AuthAdmin {
client: Client;
constructor(client: Client);
login(ip: string | null, ua: string | null, token: string | null, payload: import("./defs/api/auth/admin/login/POST/Payload.js").Payload): Promise<import("./defs/api/auth/admin/login/POST/Output.js").Output>;
logout(ip: string | null, ua: string | null, token: string): Promise<import("./defs/api/auth/admin/logout/POST/Output.js").Output>;
delegate(ip: string | null, ua: string | null, token: string, user_id: string, payload: import("./defs/api/auth/admin/delegate/[user]/POST/Payload.js").Payload): Promise<import("./defs/api/auth/admin/delegate/[user]/POST/Output.js").Output>;
}
export declare class AuthUser {
client: Client;
recovery_token: AuthUserRecoveryToken;
constructor(client: Client);
email_exists(ip: string | null, ua: string | null, token: string | null, email: string): Promise<import("./defs/api/auth/user/email-exists/[email]/GET/Output.js").Output>;
login(ip: string | null, ua: string | null, token: string | null, payload: import("./defs/api/auth/user/login/POST/Payload.js").Payload): Promise<import("./defs/api/auth/user/login/POST/Output.js").Output>;
logout(ip: string | null, ua: string | null, token: string): Promise<import("./defs/api/auth/user/logout/POST/Output.js").Output>;
register(ip: string | null, ua: string | null, token: string | null, payload: import("./defs/api/auth/user/register/POST/Payload.js").Payload): Promise<import("./defs/api/auth/user/register/POST/Output.js").Output>;
recover(ip: string | null, ua: string | null, token: string | null, payload: import("./defs/api/auth/user/recover/POST/Payload.js").Payload): Promise<import("./defs/api/auth/user/recover/POST/Output.js").Output>;
}
export declare class AuthUserRecoveryToken {
client: Client;
constructor(client: Client);
get(ip: string | null, ua: string | null, token: string | null, key: string): Promise<import("./defs/api/auth/user/recovery-token/[token]/GET/Output.js").Output>;
set_password(ip: string | null, ua: string | null, token: string | null, key: string, payload: import("./defs/api/auth/user/recovery-token/[token]/set-password/POST/Payload.js").Payload): Promise<import("./defs/api/auth/user/recovery-token/[token]/set-password/POST/Output.js").Output>;
}
export declare class Plans {
client: Client;
constructor(client: Client);
list(ip: string | null, ua: string | null, token: string | null, query: import("./defs/api/plans/GET/Query.js").Query): Promise<import("./defs/api/plans/GET/Output.js").Output>;
get(ip: string | null, ua: string | null, token: string | null, plan_id: string): Promise<import("./defs/api/plans/[plan]/GET/Output.js").Output>;
get_by_slug(ip: string | null, ua: string | null, token: string | null, plan_slug: string): Promise<import("./defs/api/plans/by-slug/[slug]/GET/Output.js").Output>;
post(ip: string | null, ua: string | null, token: string, payload: import("./defs/api/plans/POST/Payload.js").Payload): Promise<import("./defs/api/plans/POST/Output.js").Output>;
patch(ip: string | null, ua: string | null, token: string, plan_id: string, payload: import("./defs/api/plans/[plan]/PATCH/Payload.js").Payload): Promise<import("./defs/api/plans/[plan]/PATCH/Output.js").Output>;
delete(ip: string | null, ua: string | null, token: string, plan_id: string): Promise<import("./defs/api/plans/[plan]/DELETE/Output.js").Output>;
}
export declare class Accounts {
client: Client;
constructor(client: Client);
list(ip: string | null, ua: string | null, token: string, query: import("./defs/api/accounts/GET/Query.js").Query): Promise<import("./defs/api/accounts/GET/Output.js").Output>;
get(ip: string | null, ua: string | null, token: string, id: string): Promise<import("./defs/api/accounts/[account]/GET/Output.js").Output>;
post(ip: string | null, ua: string | null, token: string, payload: import("./defs/api/accounts/POST/Payload.js").Payload): Promise<import("./defs/api/accounts/POST/Output.js").Output>;
patch(ip: string | null, ua: string | null, token: string, account_id: string, payload: import("./defs/api/accounts/[account]/PATCH/Payload.js").Payload): Promise<import("./defs/api/accounts/[account]/PATCH/Output.js").Output>;
delete(ip: string | null, ua: string | null, token: string, account_id: string): Promise<import("./defs/api/accounts/[account]/DELETE/Output.js").Output>;
list_members(ip: string | null, ua: string | null, token: string, account_id: string): Promise<import("./defs/api/accounts/[account]/members/GET/Output.js").Output>;
delete_member(ip: string | null, ua: string | null, token: string, account_id: string, member_id: string): Promise<import("./defs/api/accounts/[account]/members/[member]/DELETE/Output.js").Output>;
set_member_role(ip: string | null, ua: string | null, token: string, account_id: string, member_id: string, payload: import("./defs/api/accounts/[account]/members/[member]/set-role/POST/Payload.js").Payload): Promise<import("./defs/api/accounts/[account]/members/[member]/set-role/POST/Output.js").Output>;
get_stream_stats(ip: string | null, ua: string | null, token: string, account_id: string): Promise<import("./defs/api/accounts/[account]/stream-stats/GET/Output.js").Output>;
get_stream_stats_item_now(ip: string | null, ua: string | null, token: string, account_id: string): Promise<import("./defs/api/accounts/[account]/stream-stats/now/GET/Output.js").Output>;
get_stream_stats_item_now_count(ip: string | null, ua: string | null, token: string, account_id: string): Promise<import("./defs/api/accounts/[account]/stream-stats/now/count/GET/Output.js").Output>;
get_stream_stats_now_count_by_station(ip: string | null, ua: string | null, token: string, account_id: string): Promise<import("./defs/api/accounts/[account]/stream-stats/now/count-by-station/GET/Output.js").Output>;
get_stream_stats_item_since(ip: string | null, ua: string | null, token: string, account_id: string, num: number | string, unit: string): Promise<import("./defs/api/accounts/[account]/stream-stats/[last-unitvalue]/GET/Output.js").Output>;
get_stream_stats_item_since_count(ip: string | null, ua: string | null, token: string, account_id: string, num: number | string, unit: string): Promise<import("./defs/api/accounts/[account]/stream-stats/[last-unitvalue]/count/GET/Output.js").Output>;
}
export declare class Stations {
client: Client;
files: StationFiles;
pictures: StationPictures;
constructor(client: Client);
list(ip: string | null, ua: string | null, token: string, query: import("./defs/api/stations/GET/Query.js").Query): Promise<import("./defs/api/stations/GET/Output.js").Output>;
get(ip: string | null, ua: string | null, token: string, id: string): Promise<import("./defs/api/stations/[station]/GET/Output.js").Output>;
delete(ip: string | null, ua: string | null, token: string, id: string): Promise<import("./defs/api/stations/[station]/DELETE/Output.js").Output>;
post(ip: string | null, ua: string | null, token: string, payload: import("./defs/api/stations/POST/Payload.js").Payload): Promise<import("./defs/api/stations/POST/Output.js").Output>;
is_slug_available(ip: string | null, ua: string | null, token: string | null, query: import("./defs/api/stations/is-slug-available/GET/Query.js").Query): Promise<import("./defs/api/stations/is-slug-available/GET/Output.js").Output>;
transfer(ip: string | null, ua: string | null, token: string, id: string, payload: import("./defs/api/stations/[station]/transfer/POST/Payload.js").Payload): Promise<import("./defs/api/stations/[station]/transfer/POST/Output.js").Output>;
patch(ip: string | null, ua: string | null, token: string, id: string, payload: import("./defs/api/stations/[station]/PATCH/Payload.js").Payload): Promise<import("./defs/api/stations/[station]/PATCH/Output.js").Output>;
get_stream_stats(ip: string | null, ua: string | null, token: string, id: string): Promise<import("./defs/api/stations/[station]/stream-stats/GET/Output.js").Output>;
get_stream_stats_item_now(ip: string | null, ua: string | null, token: string, id: string): Promise<import("./defs/api/stations/[station]/stream-stats/now/GET/Output.js").Output>;
get_stream_stats_item_now_count(ip: string | null, ua: string | null, token: string, id: string): Promise<import("./defs/api/stations/[station]/stream-stats/now/count/GET/Output.js").Output>;
get_stream_stats_item_since(ip: string | null, ua: string | null, token: string, id: string, num: number | string, unit: string): Promise<import("./defs/api/stations/[station]/stream-stats/[last-unitvalue]/GET/Output.js").Output>;
get_stream_stats_item_since_count(ip: string | null, ua: string | null, token: string, id: string, num: number | string, unit: string): Promise<import("./defs/api/stations/[station]/stream-stats/[last-unitvalue]/count/GET/Output.js").Output>;
get_now_playing(ip: string | null, ua: string | null, token: string, id: string): Promise<import("./defs/api/stations/[station]/now-playing/GET/Output.js").Output>;
restart_playlist(ip: string | null, ua: string | null, token: string, id: string): Promise<import("./defs/api/stations/[station]/restart-playlist/POST/Output.js").Output>;
reset_source_password(ip: string | null, ua: string | null, token: string, id: string): Promise<import("./defs/api/stations/[station]/reset-source-password/POST/Output.js").Output>;
}
export declare class StationPictures {
client: Client;
constructor(client: Client);
post(ip: string | null, ua: string | null, token: string, query: import("./defs/api/station-pictures/POST/Query.js").Query, data: Readable | Buffer): Promise<import("./defs/api/station-pictures/POST/Output.js").Output>;
}
export declare class Admins {
client: Client;
constructor(client: Client);
list(ip: string | null, ua: string | null, token: string, query: import("./defs/api/admins/GET/Query.js").Query): Promise<import("./defs/api/admins/GET/Output.js").Output>;
get(ip: string | null, ua: string | null, token: string, admin_id: string): Promise<import("./defs/api/admins/[admin]/GET/Output.js").Output>;
post(ip: string | null, ua: string | null, token: string, payload: import("./defs/api/admins/POST/Payload.js").Payload): Promise<import("./defs/api/admins/POST/Output.js").Output>;
patch(ip: string | null, ua: string | null, token: string, admin_id: string, payload: import("./defs/api/admins/[admin]/PATCH/Payload.js").Payload): Promise<import("./defs/api/admins/[admin]/PATCH/Output.js").Output>;
change_password(ip: string | null, ua: string | null, token: string, admin_id: string, payload: import("./defs/api/admins/[admin]/change-password/POST/Payload.js").Payload): Promise<import("./defs/api/admins/[admin]/change-password/POST/Output.js").Output>;
}
export declare class Users {
client: Client;
stations: UserStations;
constructor(client: Client);
list(ip: string | null, ua: string | null, token: string, query: import("./defs/api/users/GET/Query.js").Query): Promise<import("./defs/api/stations/GET/Output.js").Output>;
get(ip: string | null, ua: string | null, token: string, user_id: string): Promise<import("./defs/api/users/[user]/GET/Output.js").Output>;
post(ip: string | null, ua: string | null, token: string, payload: import("./defs/api/users/POST/Payload.js").Payload): Promise<import("./defs/api/users/POST/Output.js").Output>;
patch(ip: string | null, ua: string | null, token: string, user_id: string, payload: import("./defs/api/users/[user]/PATCH/Payload.js").Payload): Promise<import("./defs/api/users/[user]/PATCH/Output.js").Output>;
delete(ip: string | null, ua: string | null, token: string, user_id: string): Promise<import("./defs/api/users/[user]/DELETE/Output.js").Output>;
change_password(ip: string | null, ua: string | null, token: string, user_id: string, payload: import("./defs/api/users/[user]/change-password/POST/Payload.js").Payload): Promise<import("./defs/api/users/[user]/change-password/POST/Output.js").Output>;
}
export declare class UserStations {
client: Client;
constructor(client: Client);
}
export declare class StationFiles {
client: Client;
constructor(client: Client);
list(ip: string | null, ua: string | null, token: string, station_id: string, query: import("./defs/api/stations/[station]/files/GET/Query.js").Query): Promise<import("./defs/api/stations/[station]/files/GET/Output.js").Output>;
get(ip: string | null, ua: string | null, token: string, station_id: string, file_id: string): Promise<import("./defs/api/stations/[station]/files/[file]/GET/Output.js").Output>;
delete(ip: string | null, ua: string | null, token: string, station_id: string, file_id: string): Promise<import("./defs/api/stations/[station]/files/[file]/DELETE/Output.js").Output>;
post(ip: string | null, ua: string | null, token: string, station_id: string, content_type: string, content_length: number, query: import("./defs/api/stations/[station]/files/POST/Query.js").Query, data: Readable): Promise<import("./defs/api/stations/[station]/files/POST/Output.js").Output>;
put_metadata(ip: string | null, ua: string | null, token: string, station_id: string, file_id: string, payload: import("./defs/api/stations/[station]/files/[file]/metadata/PUT/Payload.js").Payload): Promise<import("./defs/api/stations/[station]/files/[file]/metadata/PUT/Output.js").Output>;
shuffle(ip: string | null, ua: string | null, token: string, station_id: string): Promise<import("./defs/api/stations/[station]/files/shuffle/POST/Output.js").Output>;
unshuffle(ip: string | null, ua: string | null, token: string, station_id: string): Promise<import("./defs/api/stations/[station]/files/unshuffle/POST/Output.js").Output>;
swap_order(ip: string | null, ua: string | null, token: string, station_id: string, file_id: string, payload: import("./defs/api/stations/[station]/files/[file]/order/swap/POST/Payload.js").Payload): Promise<import("./defs/api/stations/[station]/files/[file]/order/swap/POST/Output.js").Output>;
move_to_first(ip: string | null, ua: string | null, token: string, station_id: string, file_id: string): Promise<import("./defs/api/stations/[station]/files/[file]/order/move-to-first/POST/Output.js").Output>;
move_to_last(ip: string | null, ua: string | null, token: string, station_id: string, file_id: string): Promise<import("./defs/api/stations/[station]/files/[file]/order/move-to-last/POST/Output.js").Output>;
move_before(ip: string | null, ua: string | null, token: string, station_id: string, file_id: string, payload: import("./defs/api/stations/[station]/files/[file]/order/move-before/POST/Payload.js").Payload): Promise<import("./defs/api/stations/[station]/files/[file]/order/move-before/POST/Output.js").Output>;
move_after(ip: string | null, ua: string | null, token: string, station_id: string, file_id: string, payload: import("./defs/api/stations/[station]/files/[file]/order/move-after/POST/Payload.js").Payload): Promise<import("./defs/api/stations/[station]/files/[file]/order/move-after/POST/Output.js").Output>;
}
export declare class Analytics {
client: Client;
constructor(client: Client);
get(ip: string | null, ua: string | null, token: string, query: import("./defs/api/analytics/GET/Query.js").Query): Promise<import("./defs/api/analytics/GET/Output.js").Output>;
}
export declare class AppAnalytics {
client: Client;
constructor(client: Client);
get(ip: string | null, ua: string | null, token: string, query: import("./defs/api/app-analytics/GET/Query.js").Query): Promise<import("./defs/api/app-analytics/GET/Output.js").Output>;
}
export declare class PaymentMethods {
client: Client;
constructor(client: Client);
list(ip: string | null, ua: string | null, token: string, query: import("./defs/api/payment-methods/GET/Query.js").Query): Promise<import("./defs/api/payment-methods/GET/Output.js").Output>;
post(ip: string | null, ua: string | null, token: string, payload: import("./defs/api/payment-methods/POST/Payload.js").Payload): Promise<import("./defs/api/payment-methods/POST/Output.js").Output>;
get(ip: string | null, ua: string | null, token: string, payment_method_id: string): Promise<import("./defs/api/payment-methods/[payment-method]/GET/Output.js").Output>;
}
export declare class StreamConnections {
client: Client;
constructor(client: Client);
list(ip: string | null, ua: string | null, token: string, query: import("./defs/api/stream-connections/GET/Query.js").Query): Promise<import("./defs/api/stream-connections/GET/Output.js").Output>;
}
export declare class StreamConnectionsLite {
client: Client;
constructor(client: Client);
list(ip: string | null, ua: string | null, token: string, query: import("./defs/api/stream-connections-lite/GET/Query.js").Query): Promise<import("./defs/api/stream-connections-lite/GET/Output.js").Output>;
}
export declare class AccountInvitations {
client: Client;
constructor(client: Client);
list(ip: string | null, ua: string | null, token: string, query: import("./defs/api/invitations/GET/Query.js").Query): Promise<import("./defs/api/invitations/GET/Output.js").Output>;
post(ip: string | null, ua: string | null, token: string, payload: import("./defs/api/invitations/POST/Payload.js").Payload): Promise<import("./defs/api/invitations/POST/Output.js").Output>;
get(ip: string | null, ua: string | null, token: string, invitation_id: string): Promise<import("./defs/api/invitations/[invitation]/GET/Output.js").Output>;
delete(ip: string | null, ua: string | null, token: string, invitation_id: string): Promise<import("./defs/api/invitations/[invitation]/DELETE/Output.js").Output>;
get_by_token(ip: string | null, ua: string | null, token: string | null, invitation_token: string): Promise<import("./defs/api/invitations/get-by-token/[token]/GET/Output.js").Output>;
accept(ip: string | null, ua: string | null, token: string | null, payload: import("./defs/api/invitations/accept/POST/Payload.js").Payload): Promise<import("./defs/api/invitations/accept/POST/Output.js").Output>;
reject(ip: string | null, ua: string | null, token: string | null, payload: import("./defs/api/invitations/reject/POST/Payload.js").Payload): Promise<import("./defs/api/invitations/reject/POST/Output.js").Output>;
}
//# sourceMappingURL=index.d.ts.map