PluralKit/src/api/types.ts

88 lines
1.8 KiB
TypeScript
Raw Normal View History

2022-02-01 15:24:45 -05:00
interface SystemPrivacy {
description_privacy?: string,
member_list_privacy?: string,
front_privacy?: string,
front_history_privacy?: string,
group_list_privacy?: string
}
export interface System {
id?: string;
uuid?: string;
name?: string;
description?: string;
tag?: string;
avatar_url?: string;
banner?: string;
timezone?: string;
created?: string;
privacy?: SystemPrivacy;
color?: string;
}
2022-05-09 15:00:37 -04:00
export interface Config {
timezone: string;
pings_enabled: boolean;
member_default_private?: boolean;
group_default_private?: boolean;
show_private_info?: boolean;
member_limit: number;
group_limit: number;
description_templates: string[];
}
2022-02-01 15:24:45 -05:00
interface MemberPrivacy {
visibility?: string,
description_privacy?: string,
name_privacy?: string,
birthday_privacy?: string,
pronoun_privacy?: string,
avatar_privacy?: string,
metadata_privacy?: string
}
interface proxytag {
prefix?: string,
suffix?: string
}
export interface Member {
id?: string;
uuid?: string;
name?: string;
display_name?: string;
color?: string;
birthday?: string;
pronouns?: string;
avatar_url?: string;
banner?: string;
description?: string;
created?: string;
keep_proxy?: boolean
system?: string;
proxy_tags?: Array<proxytag>;
privacy?: MemberPrivacy
}
export interface GroupPrivacy {
description_privacy?: string,
icon_privacy?: string,
list_privacy?: string,
2022-03-02 10:37:21 +01:00
visibility?: string,
name_privacy?: string,
metadata_privacy?: string
2022-02-01 15:24:45 -05:00
}
export interface Group {
id?: string;
uuid?: string;
name?: string;
display_name?: string;
description?: string;
icon?: string;
banner?: string;
color?: string;
privacy?: GroupPrivacy;
created?: string;
members?: string[];
}