@simpleapps-com/augur-api
Version:
TypeScript client library for Augur microservices API endpoints
186 lines • 6.15 kB
TypeScript
import type { P21PimClient } from '../client';
import type { PodcastListParams, PodcastCreateParams, PodcastUpdateParams } from '../schemas';
type ExecuteRequest = P21PimClient['executeRequest'];
/**
* Creates the podcasts resource methods
* OpenAPI Path: /podcasts → podcasts.*
* @description Manage podcast content with full transcript support
*/
export declare function createPodcastsResource(executeRequest: ExecuteRequest): {
/**
* List podcasts with filtering and search capabilities
*
* @fullPath api.p21Pim.podcasts.list
* @service p21-pim
* @domain content-management
* @dataMethod podcastsData.list
* @discoverable true
* @searchTerms ['podcasts', 'content', 'transcripts', 'media']
* @relatedEndpoints ['joomla.content', 'gregorovich.documents']
* @commonPatterns ['Manage podcast content', 'Handle media transcripts']
*
* @param params Query parameters for filtering and pagination
* @returns Paginated list of podcasts
*/
list: (params?: PodcastListParams) => Promise<{
params: Record<string, unknown> | unknown[];
data: import("zod").objectInputType<{
podcastsUid: import("zod").ZodNumber;
}, import("zod").ZodTypeAny, "passthrough">[];
options: Record<string, unknown> | unknown[];
status: number;
message: string;
count: number;
total: number;
totalResults: number;
}>;
/**
* Get a specific podcast by UID
*
* @fullPath api.p21Pim.podcasts.get
* @service p21-pim
* @domain content-management
* @dataMethod podcastsData.get
* @discoverable true
* @searchTerms ['podcasts', 'content']
* @relatedEndpoints ['joomla.content']
* @commonPatterns ['Retrieve podcast details']
*
* @param podcastsUid Podcast UID (must match OpenAPI parameter name)
* @returns Single podcast record
*/
get: (podcastsUid: number) => Promise<{
params: Record<string, unknown> | unknown[];
data: {
podcastsUid: number;
} & {
[k: string]: unknown;
};
options: Record<string, unknown> | unknown[];
status: number;
message: string;
count: number;
total: number;
totalResults: number;
}>;
/**
* Create a new podcast record
*
* @fullPath api.p21Pim.podcasts.create
* @service p21-pim
* @domain content-management
* @dataMethod podcastsData.create
* @discoverable true
* @searchTerms ['podcasts', 'create', 'content']
* @relatedEndpoints ['joomla.content']
* @commonPatterns ['Create podcast content']
*
* @param data Podcast data for creation
* @returns Created podcast record
*/
create: (data: PodcastCreateParams) => Promise<{
params: Record<string, unknown> | unknown[];
data: {
podcastsUid: number;
} & {
[k: string]: unknown;
};
options: Record<string, unknown> | unknown[];
status: number;
message: string;
count: number;
total: number;
totalResults: number;
}>;
/**
* Update an existing podcast record
*
* @fullPath api.p21Pim.podcasts.update
* @service p21-pim
* @domain content-management
* @dataMethod podcastsData.update
* @discoverable true
* @searchTerms ['podcasts', 'update', 'content']
* @relatedEndpoints ['joomla.content']
* @commonPatterns ['Update podcast content']
*
* @param podcastsUid Podcast UID (must match OpenAPI parameter name)
* @param data Podcast data for update
* @returns Updated podcast record
*/
update: (podcastsUid: number, data: PodcastUpdateParams) => Promise<{
params: Record<string, unknown> | unknown[];
data: {
podcastsUid: number;
} & {
[k: string]: unknown;
};
options: Record<string, unknown> | unknown[];
status: number;
message: string;
count: number;
total: number;
totalResults: number;
}>;
/**
* Soft delete a podcast record
*
* @fullPath api.p21Pim.podcasts.delete
* @service p21-pim
* @domain content-management
* @dataMethod podcastsData.delete
* @discoverable true
* @searchTerms ['podcasts', 'delete', 'content']
* @relatedEndpoints ['joomla.content']
* @commonPatterns ['Delete podcast content']
*
* @param podcastsUid Podcast UID (must match OpenAPI parameter name)
* @returns Deleted podcast confirmation
*/
delete: (podcastsUid: number) => Promise<{
params: Record<string, unknown> | unknown[];
data: {
podcastsUid: number;
} & {
[k: string]: unknown;
};
options: Record<string, unknown> | unknown[];
status: number;
message: string;
count: number;
total: number;
totalResults: number;
}>;
};
/**
* Creates the podcastsData resource methods (data-only versions)
*/
export declare function createPodcastsDataResource(podcasts: ReturnType<typeof createPodcastsResource>): {
list: (params?: PodcastListParams) => Promise<import("zod").objectInputType<{
podcastsUid: import("zod").ZodNumber;
}, import("zod").ZodTypeAny, "passthrough">[]>;
get: (podcastsUid: number) => Promise<{
podcastsUid: number;
} & {
[k: string]: unknown;
}>;
create: (data: PodcastCreateParams) => Promise<{
podcastsUid: number;
} & {
[k: string]: unknown;
}>;
update: (podcastsUid: number, data: PodcastUpdateParams) => Promise<{
podcastsUid: number;
} & {
[k: string]: unknown;
}>;
delete: (podcastsUid: number) => Promise<{
podcastsUid: number;
} & {
[k: string]: unknown;
}>;
};
export type PodcastsResource = ReturnType<typeof createPodcastsResource>;
export type PodcastsDataResource = ReturnType<typeof createPodcastsDataResource>;
export {};
//# sourceMappingURL=podcasts.d.ts.map