Add a getEffects(id: string, options?: { limit?: number; cursor?: string; type?: string }) method to the SDK account module that calls GET /account/:id/effects and returns a typed paginated response. The optional type filter should be passed as a query param when provided. Each effect should be typed with an Effect interface that includes effectId, type, createdAt, and an optional asset and amount field.
Acceptance Criteria: Method is fully typed with the Effect interface. Optional type filter is passed correctly. Returns a PaginatedResponse type. Throws a typed StellarKitError on failure. Includes JSDoc with @example. Compiles without TypeScript errors.
Add a getEffects(id: string, options?: { limit?: number; cursor?: string; type?: string }) method to the SDK account module that calls GET /account/:id/effects and returns a typed paginated response. The optional type filter should be passed as a query param when provided. Each effect should be typed with an Effect interface that includes effectId, type, createdAt, and an optional asset and amount field.
Acceptance Criteria: Method is fully typed with the Effect interface. Optional type filter is passed correctly. Returns a PaginatedResponse type. Throws a typed StellarKitError on failure. Includes JSDoc with @example. Compiles without TypeScript errors.