import type { Secret } from "../secret.js"; /** * Options for Neon API requests */ export interface NeonApiOptions { /** * Base URL for Neon API * @default https://console.neon.tech/api/v2 */ baseUrl?: string; /** * API Key to use (overrides NEON_API_KEY env var) */ apiKey?: Secret; } /** * Create a NeonApi instance with environment variable fallback * @param options API options * @returns NeonApi instance */ export declare function createNeonApi(options?: Partial): NeonApi; /** * Get authentication headers for Neon API * @param options NeonApiOptions * @returns Headers for authentication */ export declare function getNeonAuthHeaders(options: Partial): Promise>; /** * Neon API client using raw fetch */ export declare class NeonApi { private readonly options; readonly baseUrl: string; /** * Create a new Neon API client * Use createNeonApi factory function instead of direct constructor * * @param options API options */ constructor(options: NeonApiOptions); /** * Make a fetch request to the Neon API * * @param path API path (without base URL) * @param init Fetch init options * @returns Raw Response object from fetch */ fetch(path: string, init?: RequestInit): Promise; /** * Helper for GET requests */ get(path: string, init?: RequestInit): Promise; /** * Helper for POST requests */ post(path: string, body: any, init?: RequestInit): Promise; /** * Helper for PUT requests */ put(path: string, body: any, init?: RequestInit): Promise; /** * Helper for PATCH requests */ patch(path: string, body: any, init?: RequestInit): Promise; /** * Helper for DELETE requests */ delete(path: string, init?: RequestInit): Promise; } //# sourceMappingURL=api.d.ts.map