import { GError, GOutput } from './types';
export declare const HEADER_SIZE = 5;
export declare const GRPC_STATUS = "grpc-status";
export declare const GRPC_MESSAGE = "grpc-message";
export declare const encodeRequest: (serialized: Uint8Array) => Uint8Array;
export declare function toInt8(xhr: XMLHttpRequest): false | Uint8Array;
export declare function bufToString(xhr: XMLHttpRequest): string;
export declare const safeJSON: (data: string) => unknown;
export declare const snakeCase: (str: string, delim?: string) => string;
export declare function clone<T = unknown>(source: T): T;
export declare function cloneInternal(source: unknown, objs: unknown[]): unknown;
export declare function unwrap<K, S, E>(result: GOutput<K> | Promise<GOutput<K>>, onSuccess: (data: K) => S | Promise<S>, onError: ((error: GError['error']) => E | Promise<E>) | undefined): Promise<S | E>;
export declare function unwrap<K, S>(result: GOutput<K> | Promise<GOutput<K>>, onSuccess: (data: K) => S | Promise<S>): Promise<S | undefined>;
export declare function unwrap<K, E>(result: GOutput<K> | Promise<GOutput<K>>, onSuccess: undefined, onError: ((error: GError['error']) => E | Promise<E>) | undefined): Promise<E | undefined>;
