import type { GlueMessageProto } from './glue';
export declare const GLUE_VERSION = 1;
export declare const GLUE_MESSAGE_PROTOTYPES: {
    [name: string]: GlueMessageProto;
};
export interface GlueMsgError {
    _name: "erro_evt";
    message: string;
}
export interface GlueMsgLoadReq {
    _name: "load_req";
    model_paths: string[];
    mmproj_path?: string | undefined;
    n_ctx_auto: boolean;
    use_mmap: boolean;
    use_mlock: boolean;
    n_gpu_layers: number;
    n_ctx: number;
    n_threads: number;
    model_alias?: string | undefined;
    log_level?: number | undefined;
    embeddings?: boolean | undefined;
    offload_kqv?: boolean | undefined;
    n_batch?: number | undefined;
    n_ubatch?: number | undefined;
    n_parallel?: number | undefined;
    pooling_type?: string | undefined;
    rope_scaling_type?: string | undefined;
    rope_freq_base?: number | undefined;
    rope_freq_scale?: number | undefined;
    yarn_ext_factor?: number | undefined;
    yarn_attn_factor?: number | undefined;
    yarn_beta_fast?: number | undefined;
    yarn_beta_slow?: number | undefined;
    yarn_orig_ctx?: number | undefined;
    cache_type_k?: string | undefined;
    cache_type_v?: string | undefined;
    kv_unified?: boolean | undefined;
    flash_attn?: boolean | undefined;
    swa_full?: boolean | undefined;
    n_ctx_checkpoints?: boolean | undefined;
    checkpoint_every_nt?: number | undefined;
    chat_template?: string | undefined;
    jinja?: boolean | undefined;
    default_template_kwargs_keys?: string[] | undefined;
    default_template_kwargs_vals?: string[] | undefined;
    reasoning?: boolean | undefined;
    image_min_tokens?: number | undefined;
    image_max_tokens?: number | undefined;
}
export interface GlueMsgLoadRes {
    _name: "load_res";
    success: boolean;
    n_ctx: number;
    n_batch: number;
    n_ubatch: number;
    n_vocab: number;
    n_ctx_train: number;
    n_embd: number;
    n_layer: number;
    metadata_key: string[];
    metadata_val: string[];
    token_bos: number;
    token_eos: number;
    token_eot: number;
    list_tokens_eog: number[];
    add_bos_token: boolean;
    add_eos_token: boolean;
    has_encoder: boolean;
    token_decoder_start: number;
    media_marker: string;
    has_image_input: boolean;
    has_audio_input: boolean;
}
export interface GlueMsgCompletionReq {
    _name: "cmpl_req";
    is_chat: boolean;
    data_json: string;
    files: Uint8Array[];
}
export interface GlueMsgCompletionRes {
    _name: "cmpl_res";
    success: boolean;
}
export interface GlueMsgEmbeddingReq {
    _name: "embd_req";
    data_json: string;
    files: Uint8Array[];
}
export interface GlueMsgEmbeddingRes {
    _name: "embd_res";
    success: boolean;
}
export interface GlueMsgGetResultReq {
    _name: "gres_req";
}
export interface GlueMsgGetResultRes {
    _name: "gres_res";
    success: boolean;
    has_more: boolean;
    is_error: boolean;
    data_json: string;
}
export type GlueMsg = GlueMsgError | GlueMsgLoadReq | GlueMsgLoadRes | GlueMsgCompletionReq | GlueMsgCompletionRes | GlueMsgEmbeddingReq | GlueMsgEmbeddingRes | GlueMsgGetResultReq | GlueMsgGetResultRes;
