import type { TColumnType, TColumnValue, TDtableMetadataColumns, TDtableMetadataTables, TSeaTableServerEdition, TSeaTableServerVersion } from './types';
export interface IApi {
    server: string;
    token: string;
    appAccessToken?: IAppAccessToken;
    info?: IServerInfo;
}
export interface IServerInfo {
    version: TSeaTableServerVersion;
    edition: TSeaTableServerEdition;
}
export interface IAppAccessToken {
    app_name: string;
    access_token: string;
    dtable_uuid: string;
    dtable_server: string;
    dtable_socket: string;
    workspace_id: number;
    dtable_name: string;
}
export interface IDtableMetadataColumn {
    key: string;
    name: string;
    type: TColumnType;
    editable: boolean;
}
export interface TDtableViewColumn {
    _id: string;
    name: string;
}
export interface IDtableMetadataTable {
    _id: string;
    name: string;
    columns: TDtableMetadataColumns;
}
export interface IDtableMetadata {
    tables: TDtableMetadataTables;
    version: string;
    format_version: string;
}
export interface IEndpointVariables {
    [name: string]: string | undefined;
}
export interface IRowObject {
    [name: string]: TColumnValue;
}
export interface IRow extends IRowObject {
    _id: string;
    _ctime: string;
    _mtime: string;
    _seq?: number;
}
export interface IName {
    name: string;
}
type TOperation = 'cloudHosted' | 'selfHosted';
export interface ICredential {
    token: string;
    domain: string;
    environment: TOperation;
}
interface IBase {
    dtable_uuid: string;
    access_token: string;
}
export interface ICtx {
    base?: IBase;
    credentials?: ICredential;
}
export interface IRowResponse {
    metadata: [
        {
            key: string;
            name: string;
        }
    ];
    results: IRow[];
}
export {};
//# sourceMappingURL=Interfaces.d.ts.map