import { TeamSpeakServer } from "../node/Server";
export declare interface ClientSetServerQueryLogin {
    client_login_password: string;
}
export declare interface ClientFind {
    clid: number;
    client_nickname: string;
}
export declare interface QueryErrorMessage {
    id: number;
    msg: string;
    extra_msg?: string;
    failed_permid?: number;
}
export declare interface ClientList {
    clid: number;
    cid: number;
    client_database_id: number;
    client_nickname: string;
    client_type: number;
    client_away: number;
    client_away_message: string;
    client_flag_talking: number;
    client_input_muted: number;
    client_output_muted: number;
    client_input_hardware: number;
    client_output_hardware: number;
    client_talk_power: number;
    client_is_talker: number;
    client_is_priority_speaker: number;
    client_is_recording: number;
    client_is_channel_commander: number;
    client_unique_identifier: string;
    client_servergroups: number[];
    client_channel_group_id: number;
    client_channel_group_inherited_channel_id: number;
    client_version: string;
    client_platform: string;
    client_idle_time: number;
    client_created: number;
    client_lastconnected: number;
    client_country: string;
    connection_client_ip: string;
    client_badges: string;
}
export declare interface ChannelList {
    cid: number;
    pid: number;
    channel_order: number;
    channel_name: string;
    channel_topic: string;
    channel_flag_default: number;
    channel_flag_password: number;
    channel_flag_permanent: number;
    channel_flag_semi_permanent: number;
    channel_codec: number;
    channel_codec_quality: number;
    channel_needed_talk_power: number;
    channel_icon_id: number;
    seconds_empty: number;
    total_clients_family: number;
    channel_maxclients: number;
    channel_maxfamilyclients: number;
    total_clients: number;
    channel_needed_subscribe_power: number;
}
export declare interface ServerGroupList {
    sgid: number;
    name: string;
    type: number;
    iconid: number;
    savedb: number;
    sortid: number;
    namemode: number;
    n_modifyp: number;
    n_member_addp: number;
    n_member_removep: number;
}
export declare interface ServerGroupsByClientId {
    name: string;
    sgid: number;
    cldbid: number;
}
export declare interface ChannelClientPermListId {
    cid: number;
    cldbid: number;
    permid: number;
    permvalue: number;
    permnegated: number;
    permskip: number;
}
export declare interface ChannelClientPermListSid {
    cid: number;
    cldbid: number;
    permsid: string;
    permvalue: number;
    permnegated: number;
    permskip: number;
}
export declare interface ChannelGroupList {
    cgid: number;
    name: string;
    type: number;
    iconid: number;
    savedb: number;
    sortid: number;
    namemode: number;
    n_modifyp: number;
    n_member_addp: number;
    n_member_removep: number;
}
export declare interface ServerList {
    virtualserver_id: number;
    virtualserver_port: number;
    virtualserver_status: string;
    virtualserver_clientsonline: number;
    virtualserver_queryclientsonline: number;
    virtualserver_maxclients: number;
    virtualserver_uptime: number;
    virtualserver_name: string;
    virtualserver_autostart: number;
    virtualserver_machine_id: string;
    virtualserver_unique_identifier: string;
}
export declare interface ServerCreate {
    token: string;
    server: TeamSpeakServer;
}
export declare interface QueryLoginAdd {
    cldbid: number;
    sid: number;
    client_login_name: string;
    client_login_password: string;
}
export declare interface QueryLoginList {
    cldbid: number;
    sid: number;
    client_login_name: string;
}
export declare interface Version {
    version: string;
    build: number;
    platform: string;
}
export declare interface HostInfo {
    instance_uptime: number;
    host_timestamp_utc: number;
    virtualservers_running_total: number;
    virtualservers_total_maxclients: number;
    virtualservers_total_clients_online: number;
    virtualservers_total_channels_online: number;
    connection_filetransfer_bandwidth_sent: number;
    connection_filetransfer_bandwidth_received: number;
    connection_filetransfer_bytes_sent_total: number;
    connection_filetransfer_bytes_received_total: number;
    connection_packets_sent_total: number;
    connection_bytes_sent_total: number;
    connection_packets_received_total: number;
    connection_bytes_received_total: number;
    connection_bandwidth_sent_last_second_total: number;
    connection_bandwidth_sent_last_minute_total: number;
    connection_bandwidth_received_last_second_total: number;
    connection_bandwidth_received_last_minute_total: number;
}
export declare interface InstanceInfo {
    serverinstance_database_version: number;
    serverinstance_filetransfer_port: number;
    serverinstance_max_download_total_bandwidth: number;
    serverinstance_max_upload_total_bandwidth: number;
    serverinstance_guest_serverquery_group: number;
    serverinstance_serverquery_flood_commands: number;
    serverinstance_serverquery_flood_ban_time: number;
    serverinstance_template_serveradmin_group: number;
    serverinstance_template_serverdefault_group: number;
    serverinstance_template_channeladmin_group: number;
    serverinstance_template_channeldefault_group: number;
    serverinstance_permissions_version: number;
    serverinstance_pending_connections_per_ip: number;
    serverinstance_serverquery_max_connections_per_ip: number;
}
export declare interface BindingList {
    ip: string;
}
export declare interface Whoami {
    virtualserver_status: string;
    virtualserver_unique_identifier: string;
    virtualserver_port: number;
    virtualserver_id: number;
    client_id: number;
    client_channel_id: number;
    client_nickname: string;
    client_database_id: number;
    client_login_name: string;
    client_unique_identifier: string;
    client_origin_server_id: number;
}
export declare interface ServerInfo {
    virtualserver_unique_identifier: string;
    virtualserver_name: string;
    virtualserver_welcomemessage: string;
    virtualserver_maxclients: number;
    virtualserver_password: string;
    virtualserver_created: number;
    virtualserver_codec_encryption_mode: number;
    virtualserver_hostmessage: string;
    virtualserver_hostmessage_mode: number;
    virtualserver_filebase: string;
    virtualserver_default_server_group: number;
    virtualserver_default_channel_group: number;
    virtualserver_flag_password: number;
    virtualserver_default_channel_admin_group: number;
    virtualserver_max_download_total_bandwidth: number;
    virtualserver_max_upload_total_bandwidth: number;
    virtualserver_hostbanner_url: string;
    virtualserver_hostbanner_gfx_url: string;
    virtualserver_hostbanner_gfx_interval: number;
    virtualserver_complain_autoban_count: number;
    virtualserver_complain_autoban_time: number;
    virtualserver_complain_remove_time: number;
    virtualserver_min_clients_in_channel_before_forced_silence: number;
    virtualserver_priority_speaker_dimm_modificator: number;
    virtualserver_antiflood_points_tick_reduce: number;
    virtualserver_antiflood_points_needed_command_block: number;
    virtualserver_antiflood_points_needed_ip_block: number;
    virtualserver_hostbutton_tooltip: string;
    virtualserver_hostbutton_url: string;
    virtualserver_hostbutton_gfx_url: string;
    virtualserver_download_quota: number;
    virtualserver_upload_quota: number;
    virtualserver_needed_identity_security_level: number;
    virtualserver_log_client: number;
    virtualserver_log_query: number;
    virtualserver_log_channel: number;
    virtualserver_log_permissions: number;
    virtualserver_log_server: number;
    virtualserver_log_filetransfer: number;
    virtualserver_min_client_version: number;
    virtualserver_name_phonetic: string;
    virtualserver_icon_id: number;
    virtualserver_reserved_slots: number;
    virtualserver_weblist_enabled: number;
    virtualserver_hostbanner_mode: number;
    virtualserver_channel_temp_delete_delay_default: number;
    virtualserver_min_android_version: number;
    virtualserver_min_ios_version: number;
    virtualserver_nickname: string;
    virtualserver_antiflood_points_needed_plugin_block: number;
    virtualserver_status: string;
}
export declare interface ServerIdGetByPort {
    server_id: number;
}
export declare interface ServerRequestConnectionInfo {
    connection_filetransfer_bandwidth_sent: number;
    connection_filetransfer_bandwidth_received: number;
    connection_filetransfer_bytes_sent_total: number;
    connection_filetransfer_bytes_received_total: number;
    connection_packets_sent_total: number;
    connection_bytes_sent_total: number;
    connection_packets_received_total: number;
    connection_bytes_received_total: number;
    connection_bandwidth_sent_last_second_total: number;
    connection_bandwidth_sent_last_minute_total: number;
    connection_bandwidth_received_last_second_total: number;
    connection_bandwidth_received_last_minute_total: number;
    connection_connected_time: number;
    connection_packetloss_total: number;
    connection_ping: number;
}
export declare interface ServerGroupClientList {
    cldbid: number;
    client_nickname: string;
    client_unique_identifier: string;
}
export declare interface ServerGroupCopy {
    /** only available when a new group gets created */
    sgid?: number;
}
export declare interface ChannelGroupCopy {
    /** only available when a new group gets created */
    cgid?: number;
}
export declare interface ServerTempPasswordList {
    nickname: string;
    uid: string;
    desc: string;
    pw_clear: string;
    start: number;
    end: number;
    tcid: number;
}
export declare interface ChannelGroupClientList {
    cid?: number;
    cldbid?: number;
    cgid?: number;
}
export declare interface PermList {
    permid?: number;
    permsid?: string;
    permvalue: number;
    permnegated: number;
    permskip: number;
}
export declare interface ChannelFind {
    cid: number;
    channel_name: string;
}
export declare interface ChannelInfo {
    pid: number;
    channel_name: string;
    channel_topic: string;
    channel_description: string;
    channel_password: string;
    channel_codec: number;
    channel_codec_quality: number;
    channel_maxclients: number;
    channel_maxfamilyclients: number;
    channel_order: number;
    channel_flag_permanent: number;
    channel_flag_semi_permanent: number;
    channel_flag_default: number;
    channel_flag_password: number;
    channel_codec_latency_factor: number;
    channel_codec_is_unencrypted: number;
    channel_security_salt: string;
    channel_delete_delay: number;
    channel_flag_maxclients_unlimited: number;
    channel_flag_maxfamilyclients_unlimited: number;
    channel_flag_maxfamilyclients_inherited: number;
    channel_filepath: string;
    channel_needed_talk_power: number;
    channel_forced_silence: number;
    channel_name_phonetic: string;
    channel_icon_id: number;
    channel_banner_gfx_url: string;
    channel_banner_mode: number;
    seconds_empty: number;
}
export declare interface ClientGetIds {
    cluid: string;
    clid: number;
    name: string;
}
export declare interface ClientGetDbidFromUid {
    cluid: string;
    cldbid: number;
}
export declare interface ClientGetNameFromUid {
    cluid: string;
    cldbid: number;
    name: string;
}
export declare interface ClientGetUidFromClid {
    clid: number;
    cluid: string;
    nickname: string;
}
export declare interface ClientGetNameFromDbid {
    cluid: string;
    cldbid: number;
    name: string;
}
export declare interface ClientInfo {
    cid: number;
    client_idle_time: number;
    client_unique_identifier: string;
    client_nickname: string;
    client_version: string;
    client_platform: string;
    client_input_muted: number;
    client_output_muted: number;
    client_outputonly_muted: number;
    client_input_hardware: number;
    client_output_hardware: number;
    client_default_channel: number;
    client_meta_data: string;
    client_is_recording: number;
    client_version_sign: string;
    client_security_hash: string;
    client_login_name: string;
    client_database_id: number;
    client_channel_group_id: number;
    client_servergroups: number[];
    client_created: number;
    client_lastconnected: number;
    client_totalconnections: number;
    client_away: number;
    client_away_message: string;
    client_type: number;
    client_flag_avatar: string;
    client_talk_power: number;
    client_talk_request: number;
    client_talk_request_msg: string;
    client_description: string;
    client_is_talker: number;
    client_month_bytes_uploaded: number;
    client_month_bytes_downloaded: number;
    client_total_bytes_uploaded: number;
    client_total_bytes_downloaded: number;
    client_is_priority_speaker: number;
    client_nickname_phonetic: string;
    client_needed_serverquery_view_power: number;
    client_default_token: string;
    client_icon_id: number;
    client_is_channel_commander: number;
    client_country: string;
    client_channel_group_inherited_channel_id: number;
    client_badges: string;
    client_myteamspeak_id: string;
    client_integrations: string;
    client_myteamspeak_avatar: string;
    client_signed_badges: string;
    client_base64HashClientUID: string;
    connection_filetransfer_bandwidth_sent: number;
    connection_filetransfer_bandwidth_received: number;
    connection_packets_sent_total: number;
    connection_bytes_sent_total: number;
    connection_packets_received_total: number;
    connection_bytes_received_total: number;
    connection_bandwidth_sent_last_second_total: number;
    connection_bandwidth_sent_last_minute_total: number;
    connection_bandwidth_received_last_second_total: number;
    connection_bandwidth_received_last_minute_total: number;
    connection_connected_time: number;
    connection_client_ip: string;
}
export declare interface ClientDBList {
    count: number;
    cldbid: number;
    client_unique_identifier: string;
    client_nickname: string;
    client_created: number;
    client_lastconnected: number;
    client_totalconnections: number;
    client_description: string;
    client_lastip: string;
    client_login_name: string;
}
export declare interface ClientDBInfo {
    client_unique_identifier: string;
    client_nickname: string;
    client_database_id: number;
    client_created: number;
    client_lastconnected: number;
    client_totalconnections: number;
    client_flag_avatar: string;
    client_description: string;
    client_month_bytes_uploaded: number;
    client_month_bytes_downloaded: number;
    client_total_bytes_uploaded: number;
    client_total_bytes_downloaded: number;
    client_base64HashClientUID: string;
    client_lastip: string;
}
export declare interface CustomSearch {
    cldbid: number;
    ident: string;
    value: string;
}
export declare interface CustomInfo {
    cldbid: number;
    ident: string;
    value: string;
}
export declare interface TokenCustomSet {
    ident: string;
    value: string;
}
export declare interface PermOverview {
    t: number;
    id: number;
    id2: number;
    /** perm */
    p: number;
    /** value */
    v: number;
    /** negate */
    n: number;
    /** skip */
    s: number;
}
export declare interface PermissionList {
    permid: number;
    permname: string;
    permdesc: string;
}
export declare interface PermIdGetByName {
    permsid: string;
    permid: number;
}
export declare interface PermGet {
    permsid: string;
    permid: number;
    permvalue: number;
}
export declare interface PermFind {
    t: number;
    id1: number;
    id2: number;
    p: number;
}
export declare interface Token {
    token: string;
}
export declare interface PrivilegeKeyList {
    token: string;
    token_type: number;
    token_id1: number;
    token_id2: number;
    token_created: number;
    token_description: string;
}
export declare interface MessageList {
    msgid: number;
    cluid: string;
    subject: string;
    timestamp: number;
    flag_read: number;
}
export declare interface MessageGet {
    msgid: number;
    cluid: string;
    subject: string;
    message: string;
    timestamp: number;
}
export declare interface ComplainList {
    tcldbid: number;
    tname: string;
    fcldbid: number;
    fname: string;
    message: string;
    timestamp: number;
}
export declare interface BanAdd {
    banid: number;
}
export declare interface BanList {
    banid: number;
    ip: string;
    name: string;
    uid: string;
    mytsid: string;
    lastnickname: string;
    created: number;
    duration: number;
    invokername: string;
    invokercldbid: number;
    invokeruid: string;
    reason: string;
    enforcements: number;
}
export declare interface LogView {
    last_pos: number;
    file_size: number;
    l: string;
}
export declare interface ClientDBFind {
    cldbid: number;
}
export declare interface FTList {
    clid: number;
    path: string;
    name: string;
    size: number;
    sizedone: number;
    clientftfid: number;
    serverftfid: number;
    sender: number;
    status: number;
    current_speed: number;
    average_speed: number;
    runtime: number;
}
export declare interface FTGetFileList {
    cid: number;
    path: string;
    name: string;
    size: number;
    datetime: number;
    /** 1=file 0=folder */
    type: number;
}
export declare interface FTGetFileInfo {
    cid: number;
    name: string;
    size: number;
    datetime: number;
}
export declare interface FTInitUpload {
    clientftfid: number;
    /** exists when an error occured */
    status?: number;
    /** exists when an error occured */
    msg?: string;
    /** exists when an error occured */
    size?: number;
    /** exists when file is uploadable */
    serverftfid?: number;
    /** exists when file is uploadable */
    ftkey?: string;
    /** exists when file is uploadable */
    port?: number;
    /** exists when file is uploadable */
    seekpos?: number;
    /** exists when file is uploadable */
    proto?: number;
}
export declare interface FTInitDownload {
    clientftfid: number;
    size: number;
    /** exists when an error occured */
    status?: number;
    /** exists when an error occured */
    msg?: string;
    /** exists when file is downloadable */
    serverftfid?: number;
    /** exists when file is downloadable */
    ftkey?: string;
    /** exists when file is downloadable */
    port?: number;
    /** exists when file is downloadable */
    proto?: number;
}
export declare interface SnapshotCreate {
    version: number;
    /** only exists when a password has been set otherwise it will be undefined */
    salt?: string;
    snapshot: string;
}
