@lineai/bluebeam-api
Version:
Your unofficial library for Bluebeam API for human and AI developers. Provides TypeScript support, entity classes, and developer-friendly features. Perfect for AI coders, construction professionals, and document management tasks. Includes comprehensive JS
35 lines (34 loc) • 1.36 kB
TypeScript
import { TokenStorage } from '../types/auth';
import { OAuthClient } from './auth';
import { HttpClient } from './http-client';
import { SessionsClient } from './sessions';
import { SessionsMarkupsClient } from './sessions-markups';
export type BluebeamConfig = {
readonly client_id?: string;
readonly client_secret?: string;
readonly access_token?: string;
readonly redirect_uri?: string;
readonly scope?: string;
readonly base_url?: string;
readonly tokenStorage?: TokenStorage;
readonly autoRefresh?: boolean;
};
export type BluebeamClientOptions = {
readonly timeout?: number;
readonly retries?: number;
};
export type BluebeamClient = {
readonly auth: OAuthClient;
readonly sessions: SessionsClient;
readonly markups: SessionsMarkupsClient;
readonly httpClient: HttpClient;
} & {
readonly updateAccessToken: (accessToken: string) => Promise<BluebeamClient>;
};
export declare const loadFromEnvironment: () => BluebeamConfig;
export declare const createBluebeamClient: (config?: BluebeamConfig) => Promise<BluebeamClient>;
export declare const createBluebeamClientWithToken: (clientId: string, accessToken: string, options?: {
readonly base_url_v1?: string;
readonly base_url_v2?: string;
readonly oauth_base_url?: string;
}) => Omit<BluebeamClient, 'auth' | 'updateAccessToken'>;