/** * Strategy * @description Build providers default strategy * @author ravorona */ import { InterventionRequestStrategy, InterventionRequestStrategyFormat } from '../strategies'; import { InterventionRequestConfigurations } from "../intervention-request"; export default class Strategy implements InterventionRequestStrategy { /** * Strategy defaults */ name: string; baseUrl: string; ampersand: string; separator: string; webp: boolean; process: boolean; operations: InterventionRequestStrategyFormat; /** * Default media options * @return InterventionRequestOperations */ private defaultMediaOptions; /** * Constructor * @param options */ constructor(options: InterventionRequestStrategy); /** * Compute operations * @param format - image format * @return string */ private computedOperations; /** * Format path * @param source - filename * @param operations - image format * @param baseUrl - strategy baseUrl override * @param rule - media rule * @return string */ formatPath(source: string, operations: InterventionRequestStrategyFormat, baseUrl?: string | undefined, rule?: boolean): string; /** * Merge configurations * @param configurations - InterventionRequestConfigurations */ mergeConfigurations(configurations: InterventionRequestConfigurations): void; }