ActionClient overview
ActionClient service for GitHub API access.
Provides Effect-wrapped access to:
- Raw Octokit client for full API access
- Convenience methods for common operations
- Automatic error handling and type conversion
- Pagination helpers
Added in v1.0.0
Table of contents
accessors
graphql
Signature
export declare const graphql: <T>(
query: string,
variables?: Record<string, unknown>
) => Effect.Effect<T, ActionApiError, ActionClient>
Added in v1.0.0
octokit
Signature
export declare const octokit: Effect.Effect<Octokit & Api & { paginate: PaginateInterface }, never, ActionClient>
Added in v1.0.0
paginate
Signature
export declare const paginate: <T>(
route: string,
options?: Record<string, unknown>
) => Effect.Effect<ReadonlyArray<T>, ActionApiError, ActionClient>
Added in v1.0.0
request
Signature
export declare const request: <T>(
route: string,
options?: Record<string, unknown>
) => Effect.Effect<T, ActionApiError, ActionClient>
Added in v1.0.0
context
ActionClient
Signature
export declare const ActionClient: Tag<ActionClient, ActionClient>
Added in v1.0.0
layers
layer
Signature
export declare const layer: (token: string) => Layer.Layer<ActionClient>
Added in v1.0.0
models
ActionClient (interface)
Signature
export interface ActionClient {
readonly [TypeId]: typeof TypeId
/**
* Raw Octokit client for full API access.
*/
readonly octokit: Octokit
/**
* Make a REST API request with Effect error handling.
*/
readonly request: <T>(route: string, options?: Record<string, unknown>) => Effect.Effect<T, ActionApiError>
/**
* Make a GraphQL API request with Effect error handling.
*/
readonly graphql: <T>(query: string, variables?: Record<string, unknown>) => Effect.Effect<T, ActionApiError>
/**
* Paginate through REST API results.
*/
readonly paginate: <T>(
route: string,
options?: Record<string, unknown>
) => Effect.Effect<ReadonlyArray<T>, ActionApiError>
}
Added in v1.0.0
Octokit (type alias)
Signature
export type Octokit = InstanceType<typeof GitHub>
Added in v1.0.0
type id
TypeId
Signature
export declare const TypeId: typeof TypeId
Added in v1.0.0
TypeId (type alias)
Signature
export type TypeId = typeof TypeId
Added in v1.0.0