1import type * as oracle from "@distilled.cloud/gcp/oracledatabase_v1";
2import type * as Effect from "effect/Effect";
3import * as Binding from "../../Binding.ts";
4import type { RuntimeContext } from "../../RuntimeContext.ts";
5import type { GoldengateDeployment } from "./GoldengateDeployment.ts";
6
7export interface GetGoldengateDeploymentRequest extends Omit<
8 oracle.GetProjectsLocationsGoldengateDeploymentsRequest,
9 "name"
10> {}
11
12/**
13 * Runtime binding for Oracle Database `goldengateDeployments.get`.
14 *
15 * ### Observing a GoldenGate Deployment
16 * **Example:** Read the bound deployment
17 * ```typescript
18 * const get = yield* GCP.OracleDatabase.GetGoldengateDeployment(gg);
19 * const live = yield* get();
20 * ```
21 *
22 * @binding
23 * @category OracleDatabase
24 */
25export interface GetGoldengateDeployment extends Binding.Service<
26 GetGoldengateDeployment,
27 "GCP.OracleDatabase.GetGoldengateDeployment",
28 (
29 deployment: GoldengateDeployment,
30 ) => Effect.Effect<
31 (
32 request?: GetGoldengateDeploymentRequest,
33 ) => Effect.Effect<
34 oracle.GoldengateDeployment,
35 oracle.GetProjectsLocationsGoldengateDeploymentsError,
36 RuntimeContext
37 >
38 >
39> {}
40
41export const GetGoldengateDeployment = Binding.Service<GetGoldengateDeployment>(
42 "GCP.OracleDatabase.GetGoldengateDeployment",
43);