import { $ as MediaResponse, A as CategoryTree, At as SiteContextIntegration, B as LegalDocType, Bt as TrackPageviewResponse, C as AnalyticsReportParams, Ct as RedirectLookupResponse, D as BlogListItem, Dt as SearchablePaginationParams, E as BlogDocumentResponse, Et as ResolvedNavigationMenu, F as CvEntryResponse, Ft as SkillResponse, G as LegalGroupResponse, H as LegalDocumentFullDetailResponse, Ht as TrendDataPoint, I as CvEntryType, It as SocialLinkResponse, J as LegalVersionResponse, K as LegalGroupWithItems, L as DocumentLocalizationResponse, Lt as TagResponse, M as CodeInjection, Mt as SiteLocaleResponse, N as ContentStatus, Nt as SiteResponse, O as BlogResponse, Ot as SectionLocalizationResponse, P as CvEntryParams, Pt as SkillCategory, Q as MediaListParams, R as ForjaClientConfig, Rt as TopContentItem, S as AnalyticsPageParams, St as PublicSiteSettings, T as BlogDetailResponse, Tt as ReferrerItem, U as LegalDocumentResponse, Ut as UiStringsResponse, V as LegalDocumentDetailResponse, Vt as TranslationStatus, W as LegalDocumentWithGroups, X as LocalizationResponse, Y as LocaleFilterParams, Z as MediaListItem, _ as PublicCollectionListParams, _t as ProjectLinkType, a as FormFieldValidation, at as NavigationMenuResponse, b as PaginatedResult, bt as ProjectMediaResponse, c as PublicFormDefinition, ct as PageListItem, d as SubmitFormOptions, dt as PageType, et as MediaVariantResponse, f as ValidationErrorMap, ft as Paginated, g as PublicCollectionField, gt as ProjectLinkResponse, h as PublicCollectionEntry, ht as ProjectDetailResponse, i as FormFieldType, it as NavigationItemResponse, j as CategoryWithCountResponse, jt as SiteContextResponse, k as CategoryResponse, kt as SectionType, l as SelfServiceLookup, lt as PageResponse, m as CollectionsResource, mt as PaginationParams, n as FormBotProtection, nt as MenuWithTree, o as FormSubmitData, ot as NavigationTree, p as validateSubmission, pt as PaginationMeta, q as LegalItemResponse, r as FormFieldDefinition, rt as NavigationItemLocalizationResponse, s as FormSubmitResponse, st as PageDetailResponse, t as ForjaClient, tt as MenuLocalizationResponse, u as SelfServiceSubmission, ut as PageSectionResponse, v as PublicCollectionSchema, vt as ProjectListParams, w as AnalyticsReportResponse, wt as RedirectResponse, x as AnalyticsPageDetailResponse, xt as ProjectResponse, y as HttpClient, yt as ProjectLocalizationResponse, z as LegalDocLocalizationResponse, zt as TrackPageviewRequest } from "./client-DYqmXlE_.cjs"; //#region src/code-injection.d.ts /** * Render code injection as HTML strings ready for embedding. * * Returns `{ head, footer }` where each is safe to insert via * `set:html` in Astro or innerHTML in a trusted template context. * * **Important:** Code injection values come from the site's admin * settings and are considered trusted (admin-authored) content. * * This is deliberately a thin pass-through to provide a clear API * surface and a single place to add sanitization later. * * @example * ```astro * --- * const injection = await forja.site.getCodeInjection(); * const { head, footer } = renderCodeInjection(injection); * --- * * * * * * * * ``` */ export declare function renderCodeInjection(injection: CodeInjection): { head: string; footer: string; }; //#endregion //#region src/resources/strings.d.ts /** * UI string operations. * * Provides the site-scoped key → string dictionary used for interface * chrome (labels, headings, aria texts). Obtain the resolved map via * {@link ForjaClient.strings | `forja.strings(locale)`}. * * All operations require an API key with `Read` permission. */ export declare class StringsResource { private readonly http; private readonly siteId; constructor(http: HttpClient, siteId: string); /** * Fetch the resolved UI strings for one locale as a flat `key → value` map. * * **Endpoint:** `GET /sites/{siteId}/strings?locale={code}` * * The server resolves one value per key via its fallback chain * (exact locale → site default → first available localization, lowest * locale code); keys without any localization are omitted. Unknown locale * codes fall back silently. The `locale` parameter is required — the API * responds with `400 ERR_STRINGS_LOCALE_REQUIRED` without it. * * @param locale - Locale code to resolve values for (e.g. `"en"`, `"de-AT"`). * @returns Flat map of key → resolved value. * * @example * ```ts * const strings = await forja.strings('de'); * const label = strings['blog.min_read'] ?? 'min read'; * ``` */ get(locale: string): Promise; } //#endregion //#region src/errors.d.ts /** * Base error class for all Forja SDK errors. * * Every error includes a machine-readable {@link code} following the pattern * `AUTH_ERROR`, `NOT_FOUND`, `RATE_LIMIT`, etc. for programmatic handling. */ export declare class ForjaError extends Error { /** Machine-readable error code (e.g. `AUTH_ERROR`, `NOT_FOUND`). */ readonly code: string; constructor(message: string, /** Machine-readable error code (e.g. `AUTH_ERROR`, `NOT_FOUND`). */ code: string); } /** * Thrown when the API returns HTTP 401 — the API key is invalid, expired, or missing. * * @example * ```ts * try { * await forja.blogs.listPublished(); * } catch (err) { * if (err instanceof ForjaAuthError) { * console.error('Check your API key'); * } * } * ``` */ export declare class ForjaAuthError extends ForjaError { constructor(message?: string); } /** * Thrown when the API returns HTTP 403 — the API key lacks the required permission * level for the requested operation (e.g. a `Read` key trying to write). */ export declare class ForjaPermissionError extends ForjaError { constructor(message?: string); } /** * Thrown when the API returns HTTP 404 — the requested resource does not exist. * * Single-resource methods (e.g. `blogs.get()`, `media.get()`) catch this * internally and return `null` instead. This error only surfaces if you call * an endpoint that doesn't use the null-return pattern. */ export declare class ForjaNotFoundError extends ForjaError { constructor(message?: string); } /** * Thrown when the API returns HTTP 429 — the client has exceeded the rate limit. * * The {@link retryAfter} property contains the number of seconds to wait before * retrying, parsed from the `Retry-After` response header (if present). * * @example * ```ts * try { * await forja.blogs.listPublished(); * } catch (err) { * if (err instanceof ForjaRateLimitError) { * await sleep(err.retryAfter ?? 5); * // retry... * } * } * ``` */ export declare class ForjaRateLimitError extends ForjaError { /** Seconds to wait before retrying, from the `Retry-After` header. */ readonly retryAfter?: number | undefined; constructor(message?: string, /** Seconds to wait before retrying, from the `Retry-After` header. */ retryAfter?: number | undefined); } /** * Thrown when the API returns HTTP 422 — the request body failed validation * (e.g. missing required fields, invalid format). */ export declare class ForjaValidationError extends ForjaError { /** Additional validation details from the API response. */ readonly details?: string | undefined; constructor(message?: string, /** Additional validation details from the API response. */ details?: string | undefined); } /** * Thrown when the API returns HTTP 5xx — an unexpected server-side failure. * * The {@link status} property contains the exact HTTP status code (500, 502, 503, etc.). */ export declare class ForjaServerError extends ForjaError { /** The HTTP status code (e.g. 500, 502, 503). */ readonly status: number; constructor(message?: string, /** The HTTP status code (e.g. 500, 502, 503). */ status?: number); } /** * Thrown when the HTTP request fails at the network level — the server is * unreachable, DNS resolution failed, or the connection was reset. * * The original error is available via {@link cause}. */ export declare class ForjaNetworkError extends ForjaError { /** The underlying network error (e.g. `TypeError: Failed to fetch`). */ readonly cause?: Error | undefined; constructor(message?: string, /** The underlying network error (e.g. `TypeError: Failed to fetch`). */ cause?: Error | undefined); } //#endregion export { type AnalyticsPageDetailResponse, type AnalyticsPageParams, type AnalyticsReportParams, type AnalyticsReportResponse, type BlogDetailResponse, type BlogDocumentResponse, type BlogListItem, type BlogResponse, type CategoryResponse, type CategoryTree, type CategoryWithCountResponse, type CodeInjection, CollectionsResource, type ContentStatus, type CvEntryParams, type CvEntryResponse, type CvEntryType, type DocumentLocalizationResponse, ForjaClient, type ForjaClientConfig, type FormBotProtection, type FormFieldDefinition, type FormFieldType, type FormFieldValidation, type FormSubmitData, type FormSubmitResponse, type HttpClient, type LegalDocLocalizationResponse, type LegalDocType, type LegalDocumentDetailResponse, type LegalDocumentFullDetailResponse, type LegalDocumentResponse, type LegalDocumentWithGroups, type LegalGroupResponse, type LegalGroupWithItems, type LegalItemResponse, type LegalVersionResponse, type LocaleFilterParams, type LocalizationResponse, type MediaListItem, type MediaListParams, type MediaResponse, type MediaVariantResponse, type MenuLocalizationResponse, type MenuWithTree, type NavigationItemLocalizationResponse, type NavigationItemResponse, type NavigationMenuResponse, type NavigationTree, type PageDetailResponse, type PageListItem, type PageResponse, type PageSectionResponse, type PageType, type Paginated, type PaginatedResult, type PaginationMeta, type PaginationParams, type ProjectDetailResponse, type ProjectLinkResponse, type ProjectLinkType, type ProjectListParams, type ProjectLocalizationResponse, type ProjectMediaResponse, type ProjectResponse, type PublicCollectionEntry, type PublicCollectionField, type PublicCollectionListParams, type PublicCollectionSchema, type PublicFormDefinition, type PublicSiteSettings, type RedirectLookupResponse, type RedirectResponse, type ReferrerItem, type ResolvedNavigationMenu, type SearchablePaginationParams, type SectionLocalizationResponse, type SectionType, type SelfServiceLookup, type SelfServiceSubmission, type SiteContextIntegration, type SiteContextResponse, type SiteLocaleResponse, type SiteResponse, type SkillCategory, type SkillResponse, type SocialLinkResponse, type SubmitFormOptions, type TagResponse, type TopContentItem, type TrackPageviewRequest, type TrackPageviewResponse, type TranslationStatus, type TrendDataPoint, type UiStringsResponse, type ValidationErrorMap, validateSubmission };