/**
* The standard IPFS Pinning Service API (1.0.0) served at /pins — the same
* pins as `ipfs` but with the spec's `{ count, results }` envelope and
* requestid addressing, so standard tooling works:
* ipfs pin remote service add ird https://api.ird.ro ird_...
* Use `ipfs` for the richer native API.
*/
import type { Client } from './client.js';
import * as http from './http.js';
import type { Body, Query } from './types.js';
/** GET /pins — List pin objects. */
export const list = (client: Client, query?: Query<'/pins', 'get'>) => http.get(client, '/pins', { query });
/** POST /pins — Add a pin (202). */
export const add = (client: Client, body: Body<'/pins', 'post'>) => http.post(client, '/pins', { body });
/** GET /pins/{requestid} — Pin object. */
export const get = (client: Client, requestid: string) => http.get(client, '/pins/{requestid}', { params: { requestid } });
/** POST /pins/{requestid} — Replace a pin (202). */
export const replace = (client: Client, requestid: string, body: Body<'/pins/{requestid}', 'post'>) =>
http.post(client, '/pins/{requestid}', { params: { requestid }, body });
/** DELETE /pins/{requestid} — Remove a pin (202). */
export const remove = (client: Client, requestid: string) =>
http.del(client, '/pins/{requestid}', { params: { requestid } });