import { IAddThreadConfig, IThread, IThreadList, IPeerList, IThreadSnapshotQuery, IQueryOptions } from './model';
/**
 * Add a new Thread.
 * ```typescript
 * Textile.threads.add(config);
 * ```
 */
export declare function add(config: IAddThreadConfig): Promise<IThread>;
/**
 * Add a Thread or update metadata if new.
 * ```typescript
 * Textile.threads.addOrUpdate(thread);
 * ```
 */
export declare function addOrUpdate(thread: IThread): Promise<void>;
/**
 * Rename a Thread by ThreadId.
 * ```typescript
 * Textile.threads.rename(threadId, name);
 * ```
 */
export declare function rename(threadId: string, name: string): Promise<void>;
/**
 * Get Thread details by ThreadId.
 * ```typescript
 * Textile.threads.get(threadId);
 * ```
 */
export declare function get(threadId: string): Promise<IThread>;
/**
 * List all Threads.
 * ```typescript
 * Textile.threads.list();
 * ```
 */
export declare function list(): Promise<IThreadList>;
/**
 * Request all Peers in a Thread by ThreadId.
 * ```typescript
 * Textile.threads.peers(threadId);
 * ```
 */
export declare function peers(threadId: string): Promise<IPeerList>;
/**
 * Remove a Thread by ThreadId.
 * ```typescript
 * Textile.threads.remove(id);
 * ```
 */
export declare function remove(id_: string): Promise<string>;
/**
 * Snapshot all threads for active cafe sessions.
 * ```typescript
 * Textile.threads.snapshot();
 * ```
 */
export declare function snapshot(): Promise<void>;
/**
 * Locate all Thread snapshots.
 * ```typescript
 * const snapshots = Textile.threads.searchSnapshots(query, options);
 * ```
 */
export declare function searchSnapshots(query: IThreadSnapshotQuery, options: IQueryOptions): Promise<string>;
/**
 * Cancel an ongoing thread snapshots search.
 * ```typescript
 * Textile.threads.cancelSearchSnapshots();
 * ```
 */
export declare function cancelSearchSnapshots(): Promise<void>;
