@simpleapps-com/augur-api
Version:
TypeScript client library for Augur microservices API endpoints
232 lines • 10.3 kB
TypeScript
import type { AgrInfoClient } from '../client';
import type { RubricsListParams, RubricCreateParams, RubricUpdateParams, Rubric } from '../schemas';
type ExecuteRequest = AgrInfoClient['executeRequest'];
/**
* Creates the rubrics resource methods
* OpenAPI Path: /rubrics → rubrics.*
* @description Rubrics management endpoints
*/
export declare function createRubricsResource(executeRequest: ExecuteRequest): {
/**
* List available rubrics for evaluation and scoring
*
* @fullPath api.agrInfo.rubrics.list
* @service agr-info
* @domain evaluation-management
* @dataMethod rubricsData.list
* @discoverable true
* @searchTerms ["rubrics", "evaluation", "scoring", "assessment", "criteria"]
* @relatedEndpoints ["api.agrInfo.rubrics.get", "api.agrInfo.rubrics.create"]
* @commonPatterns ["List evaluation rubrics", "Get assessment criteria", "Scoring frameworks"]
* @workflow ["evaluation-setup", "assessment-preparation", "scoring-criteria"]
* @prerequisites ["Valid authentication", "Evaluation system access"]
* @nextSteps ["Select rubric for evaluation", "Create new assessment"]
* @businessRules ["Returns available evaluation frameworks", "Includes rubric metadata"]
* @functionalArea "evaluation-management"
* @caching "Cache for 10 minutes, stable evaluation criteria"
* @performance "Fast retrieval of evaluation frameworks"
*
* @param params Optional filtering parameters
* @returns Promise<RubricsListResponse> List of available rubrics
*/
list: (params?: RubricsListParams) => Promise<{
params: Record<string, unknown> | unknown[];
data: import("zod").objectInputType<{
rubrics_uid: import("zod").ZodNumber;
name: import("zod").ZodOptional<import("zod").ZodString>;
description: import("zod").ZodOptional<import("zod").ZodString>;
created_at: import("zod").ZodOptional<import("zod").ZodString>;
updated_at: import("zod").ZodOptional<import("zod").ZodString>;
}, import("zod").ZodTypeAny, "passthrough">[];
options: Record<string, unknown> | unknown[];
status: number;
message: string;
count: number;
total: number;
totalResults: number;
}>;
/**
* Get specific rubric details and criteria
*
* @fullPath api.agrInfo.rubrics.get
* @service agr-info
* @domain evaluation-management
* @dataMethod rubricsData.get
* @discoverable true
* @searchTerms ["rubric", "details", "criteria", "evaluation", "scoring"]
* @relatedEndpoints ["api.agrInfo.rubrics.list", "api.agrInfo.rubrics.update", "api.agrInfo.rubrics.delete"]
* @commonPatterns ["Get rubric details", "View evaluation criteria", "Rubric information"]
* @workflow ["evaluation-review", "assessment-setup", "scoring-preparation"]
* @prerequisites ["Valid authentication", "Valid rubric UID"]
* @nextSteps ["Use rubric for evaluation", "Modify rubric criteria"]
* @businessRules ["Returns complete rubric structure", "Includes all evaluation criteria"]
* @functionalArea "evaluation-management"
* @caching "Cache for 15 minutes, evaluation criteria are stable"
* @performance "Fast lookup by rubric UID"
*
* @param rubricsUid Unique identifier for the rubric
* @returns Promise<RubricResponse> Rubric details and criteria
*/
get: (rubricsUid: string | number) => Promise<{
params: Record<string, unknown> | unknown[];
data: {
rubrics_uid: number;
description?: string | undefined;
name?: string | undefined;
created_at?: string | undefined;
updated_at?: string | undefined;
} & {
[k: string]: unknown;
};
options: Record<string, unknown> | unknown[];
status: number;
message: string;
count: number;
total: number;
totalResults: number;
}>;
/**
* Create a new evaluation rubric
*
* @fullPath api.agrInfo.rubrics.create
* @service agr-info
* @domain evaluation-management
* @dataMethod rubricsData.create
* @discoverable true
* @searchTerms ["rubric", "create", "new", "evaluation", "assessment", "criteria"]
* @relatedEndpoints ["api.agrInfo.rubrics.list", "api.agrInfo.rubrics.get", "api.agrInfo.rubrics.update"]
* @commonPatterns ["Create evaluation rubric", "New assessment framework", "Define scoring criteria"]
* @workflow ["rubric-development", "evaluation-setup", "assessment-creation"]
* @prerequisites ["Valid authentication", "Evaluation design requirements"]
* @nextSteps ["Define detailed criteria", "Test rubric with evaluations"]
* @businessRules ["Validates rubric structure", "Assigns unique UID", "Sets creation metadata"]
* @functionalArea "evaluation-management"
* @caching "No caching - immediate creation"
* @performance "Fast creation with validation"
*
* @param data Rubric creation data
* @returns Promise<RubricResponse> Created rubric details
*/
create: (data: RubricCreateParams) => Promise<{
params: Record<string, unknown> | unknown[];
data: {
rubrics_uid: number;
description?: string | undefined;
name?: string | undefined;
created_at?: string | undefined;
updated_at?: string | undefined;
} & {
[k: string]: unknown;
};
options: Record<string, unknown> | unknown[];
status: number;
message: string;
count: number;
total: number;
totalResults: number;
}>;
/**
* Update existing rubric criteria and configuration
*
* @fullPath api.agrInfo.rubrics.update
* @service agr-info
* @domain evaluation-management
* @dataMethod rubricsData.update
* @discoverable true
* @searchTerms ["rubric", "update", "modify", "edit", "criteria", "evaluation"]
* @relatedEndpoints ["api.agrInfo.rubrics.get", "api.agrInfo.rubrics.list", "api.agrInfo.rubrics.delete"]
* @commonPatterns ["Update rubric criteria", "Modify evaluation framework", "Edit scoring system"]
* @workflow ["rubric-maintenance", "evaluation-improvement", "assessment-refinement"]
* @prerequisites ["Valid authentication", "Existing rubric", "Valid rubrics_uid"]
* @nextSteps ["Validate updated criteria", "Re-test evaluation accuracy"]
* @businessRules ["Preserves evaluation integrity", "Updates modification timestamps", "Validates criteria"]
* @functionalArea "evaluation-management"
* @caching "Invalidate cache on update"
* @performance "Fast updates with validation"
*
* @param rubricsUid Unique identifier for the rubric
* @param data Updated rubric data
* @returns Promise<RubricResponse> Updated rubric details
*/
update: (rubricsUid: string | number, data: RubricUpdateParams) => Promise<{
params: Record<string, unknown> | unknown[];
data: {
rubrics_uid: number;
description?: string | undefined;
name?: string | undefined;
created_at?: string | undefined;
updated_at?: string | undefined;
} & {
[k: string]: unknown;
};
options: Record<string, unknown> | unknown[];
status: number;
message: string;
count: number;
total: number;
totalResults: number;
}>;
/**
* Delete an evaluation rubric
*
* @fullPath api.agrInfo.rubrics.delete
* @service agr-info
* @domain evaluation-management
* @dataMethod rubricsData.delete
* @discoverable true
* @searchTerms ["rubric", "delete", "remove", "evaluation", "cleanup"]
* @relatedEndpoints ["api.agrInfo.rubrics.list", "api.agrInfo.rubrics.get"]
* @commonPatterns ["Remove rubric", "Delete evaluation framework", "Cleanup assessments"]
* @workflow ["rubric-cleanup", "evaluation-maintenance", "assessment-removal"]
* @prerequisites ["Valid authentication", "Existing rubric", "No active evaluations using rubric"]
* @nextSteps ["Verify rubric removal", "Update evaluation documentation"]
* @businessRules ["Checks for active usage", "Prevents deletion of in-use rubrics", "Logs deletion"]
* @functionalArea "evaluation-management"
* @caching "Invalidate all related cache on delete"
* @performance "Fast deletion with dependency validation"
*
* @param rubricsUid Unique identifier for the rubric
* @returns Promise<boolean> Success indicator
*/
delete: (rubricsUid: string | number) => Promise<boolean>;
};
/**
* Creates the rubricsData resource methods (data-only versions)
*/
export declare function createRubricsDataResource(rubrics: ReturnType<typeof createRubricsResource>): {
/**
* Get rubrics list data only
* @param params Optional filtering parameters
* @returns Promise<Rubric[]> Array of rubrics
*/
list: (params?: RubricsListParams) => Promise<Rubric[]>;
/**
* Get rubric details data only
* @param rubricsUid Unique identifier for the rubric
* @returns Promise<Rubric> Rubric details
*/
get: (rubricsUid: string | number) => Promise<Rubric>;
/**
* Get created rubric data only
* @param data Rubric creation data
* @returns Promise<Rubric> Created rubric
*/
create: (data: RubricCreateParams) => Promise<Rubric>;
/**
* Get updated rubric data only
* @param rubricsUid Unique identifier for the rubric
* @param data Updated rubric data
* @returns Promise<Rubric> Updated rubric
*/
update: (rubricsUid: string | number, data: RubricUpdateParams) => Promise<Rubric>;
/**
* Delete rubric and return success status
* @param rubricsUid Unique identifier for the rubric
* @returns Promise<boolean> Success indicator
*/
delete: (rubricsUid: string | number) => Promise<boolean>;
};
export type RubricsResource = ReturnType<typeof createRubricsResource>;
export type RubricsDataResource = ReturnType<typeof createRubricsDataResource>;
export {};
//# sourceMappingURL=rubrics.d.ts.map