import { H as HttpClientConfig } from '../types-C8x5GGVP.js'; import { ContentstackRegion } from '../regions/index.js'; import { C as ContentstackHttpClient } from '../client-C0hESzBg.js'; interface DeveloperHubApp { uid: string; name: string; description?: string; icon?: string; target_type?: "stack" | "organization"; visibility?: "private" | "public"; framework_version?: string; version?: number; oauth?: AppOAuthConfig; webhook?: AppWebhookConfig; ui_location?: AppUILocation; hosting?: AppHostingConfig; created_at?: string; updated_at?: string; created_by?: string; updated_by?: string; organization_uid?: string; } interface AppWebhookConfig { target_url?: string; channels?: string[]; signed?: boolean; retry_policy?: string; events?: Array<{ module: string; api_key?: string; }>; } interface AppUILocation { signed?: boolean; base_url?: string; locations?: Array<{ type: string; meta?: Array<{ uid?: string; name?: string; path?: string; signed?: boolean; enabled?: boolean; }>; }>; } /** Custom Hosting configuration — the "App URL" field in Developer Hub (distinct from `ui_location.base_url`). */ interface AppHostingConfig { provider?: string; deployment_url?: string; } interface AppOAuthConfig { client_id?: string; client_secret?: string; redirect_uri?: string; app_token_config?: { enabled: boolean; scopes?: string[]; }; user_token_config?: { enabled: boolean; scopes?: string[]; }; } interface AppAuthorization { uid: string; app_uid?: string; user_uid?: string; organization_uid?: string; created_at?: string; updated_at?: string; } interface AppInstallation { uid: string; manifest?: { uid: string; name?: string; }; target?: { type: string; uid: string; }; status?: string; configuration?: Record; server_configuration?: Record; ui_location?: AppUILocation; created_at?: string; updated_at?: string; created_by?: string; updated_by?: string; } interface AppRequest { uid: string; organization_uid?: string; app_uid?: string; target_uid?: string; state?: string; requested_by?: string; created_at?: string; updated_at?: string; } interface HostingStatus { enabled: boolean; provider?: string; } interface HostingDeployment { uid: string; created_at?: string; deployment_number?: number; status?: string; environment?: string; preview_url?: string; deployment_url?: string; upload_uid?: string; file_type?: string; } interface HostingDeploymentLog { timestamp?: string; message?: string; level?: string; } interface WebhookExecution { uid: string; webhook_uid?: string; status?: string; request?: Record; response?: Record; created_at?: string; } interface OAuthScope { uid?: string; name?: string; description?: string; } interface CreateAppData { name: string; description?: string; target_type?: "stack" | "organization"; icon?: string; webhook?: AppWebhookConfig; oauth?: Partial; ui_location?: AppUILocation; hosting?: AppHostingConfig; } type UpdateAppData = Partial; interface InstallAppData { target_uid: string; target_type: "stack" | "organization"; } interface ReinstallAppData { target_uid: string; installation_uid: string; } interface AuthorizeAppData { response_type: string; client_id: string; redirect_uri: string; scope: string; state?: string; } interface UpdateOAuthConfigData { redirect_uri?: string; app_token_config?: { enabled: boolean; scopes?: string[]; }; user_token_config?: { enabled: boolean; scopes?: string[]; }; } interface DeveloperHubCreateDeploymentData { upload_uid: string; file_type: string; with_advanced_options?: boolean; } interface CreateAppRequestData { app_uid: string; target_uid: string; } interface DisconnectHostingData { provider?: string; } interface SetExternalHostingData { deployment_url: string; provider?: string; } interface ListAppsOptions { limit?: number; skip?: number; sort?: string; order?: "asc" | "desc"; search?: string; target_type?: "stack" | "organization"; include_update_details?: boolean; } interface ListInstallationsOptions { limit?: number; skip?: number; app_uids?: string[]; installation_uids?: string[]; target_uids?: string[]; } interface ListAppInstallationsOptions { limit?: number; skip?: number; } interface DeveloperHubListDeploymentsOptions { limit?: number; skip?: number; } interface ListAuthorizationsOptions { limit?: number; skip?: number; } interface ListRequestsOptions { limit?: number; skip?: number; } declare class AppsClient { private readonly http; constructor(http: ContentstackHttpClient); list(options?: ListAppsOptions): AsyncIterable; listAll(options?: ListAppsOptions): Promise; search(term: string, options?: Omit): Promise; get(appUid: string): Promise; create(data: CreateAppData): Promise; update(appUid: string, data: UpdateAppData): Promise; delete(appUid: string): Promise; install(appUid: string, data: InstallAppData): Promise; reinstall(appUid: string, data: ReinstallAppData): Promise; authorize(appUid: string, data: AuthorizeAppData): Promise<{ redirect_uri: string; }>; listAuthorized(): Promise; listInstallations(appUid: string, options?: ListAppInstallationsOptions): AsyncIterable; listInstallationsAll(appUid: string, options?: ListAppInstallationsOptions): Promise; listRequests(appUid: string): Promise; } declare class AuthorizationsClient { private readonly http; constructor(http: ContentstackHttpClient); list(appUid: string, options?: ListAuthorizationsOptions): Promise; revokeAll(appUid: string): Promise; revoke(appUid: string, authorizationUid: string): Promise; } declare class HostingClient { private readonly http; private readonly apps?; constructor(http: ContentstackHttpClient, apps?: AppsClient | undefined); private hostingPath; private deploymentsPath; getStatus(appUid: string): Promise; enable(appUid: string): Promise; disable(appUid: string): Promise; disconnect(appUid: string, data?: DisconnectHostingData): Promise; /** * Set custom/external hosting ("App URL" in Developer Hub). Updates the manifest's * `hosting.deployment_url` field — distinct from Launch-backed hosting (`enable`, etc.). */ setExternal(appUid: string, data: SetExternalHostingData): Promise; createUploadUrl(appUid: string): Promise<{ upload_uid: string; upload_url: string; }>; getLatestLiveDeployment(appUid: string): Promise; listDeployments(appUid: string, options?: DeveloperHubListDeploymentsOptions): AsyncIterable; listDeploymentsAll(appUid: string, options?: DeveloperHubListDeploymentsOptions): Promise; getDeployment(appUid: string, deploymentUid: string): Promise; createDeployment(appUid: string, data: DeveloperHubCreateDeploymentData): Promise; getDeploymentLogs(appUid: string, deploymentUid: string): Promise; getDeploymentDownloadUrl(appUid: string, deploymentUid: string): Promise<{ download_url: string; }>; } declare class InstallationsClient { private readonly http; constructor(http: ContentstackHttpClient); list(options?: ListInstallationsOptions): AsyncIterable; listAll(options?: ListInstallationsOptions): Promise; get(installationUid: string): Promise; update(installationUid: string, data: Partial): Promise; delete(installationUid: string): Promise; getConfiguration(installationUid: string): Promise>; setConfiguration(installationUid: string, data: Record): Promise>; getServerConfiguration(installationUid: string): Promise>; setServerConfiguration(installationUid: string, data: Record): Promise>; getInstallationData(installationUid: string): Promise>; getConfigLocation(installationUid: string): Promise>; listInstalledApps(): Promise; listInstalledUsers(): Promise; listInstalledStacks(): Promise; listWebhookExecutions(installationUid: string, webhookUid: string): Promise; getWebhookExecution(installationUid: string, webhookUid: string, executionUid: string): Promise; retryWebhookExecution(installationUid: string, webhookUid: string, executionUid: string): Promise; } declare class OAuthClient { private readonly http; constructor(http: ContentstackHttpClient); get(appUid: string): Promise; update(appUid: string, data: UpdateOAuthConfigData): Promise; listScopes(): Promise; } declare class RequestsClient { private readonly http; constructor(http: ContentstackHttpClient); list(options?: ListRequestsOptions): Promise; create(data: CreateAppRequestData): Promise; delete(requestUid: string): Promise; } type DeveloperHubClientAuth = { type: "oauth"; accessToken: string; } | { type: "authtoken"; token: string; } | { type: "app-token"; accessToken: string; } | { type: "app-token"; clientId: string; clientSecret: string; }; interface DeveloperHubClientConfig { region: ContentstackRegion; organizationUid: string; auth: DeveloperHubClientAuth; httpOptions?: Partial; } interface DeveloperHubClient { apps: AppsClient; oauth: OAuthClient; authorizations: AuthorizationsClient; hosting: HostingClient; installations: InstallationsClient; requests: RequestsClient; } declare function createDeveloperHubClient(config: DeveloperHubClientConfig): DeveloperHubClient; export { type AppAuthorization, type AppHostingConfig, type AppInstallation, type AppOAuthConfig, type AppRequest, type AppUILocation, type AppWebhookConfig, type AuthorizeAppData, type CreateAppData, type CreateAppRequestData, type DeveloperHubApp, type DeveloperHubClient, type DeveloperHubClientAuth, type DeveloperHubClientConfig, type DeveloperHubCreateDeploymentData, type DeveloperHubListDeploymentsOptions, type DisconnectHostingData, type HostingDeployment, type HostingDeploymentLog, type HostingStatus, type InstallAppData, type ListAppInstallationsOptions, type ListAppsOptions, type ListAuthorizationsOptions, type ListInstallationsOptions, type ListRequestsOptions, type OAuthScope, type ReinstallAppData, type SetExternalHostingData, type UpdateAppData, type UpdateOAuthConfigData, type WebhookExecution, createDeveloperHubClient };