LogoCyanPrint
ResolversReferenceSDK Reference

StartResolver Functions

Entry point functions for starting resolvers

StartResolver Functions

Each SDK provides an entry point function that starts the resolver server and handles incoming file resolution requests.

Function Signature

function StartResolverWithLambda(fn: LambdaResolverFn): void

Parameters

Prop

Type

LambdaResolverFn

type LambdaResolverFn = (input: ResolverInput) => Promise<ResolverOutput>;
def start_resolver_with_fn(fn: Callable[[ResolverInput], Awaitable[ResolverOutput]]) -> None

Parameters

Prop

Type

Example

async def resolver(input: ResolverInput) -> ResolverOutput:
# Your logic here
return ResolverOutput(path="...", content="...")
start_resolver_with_fn(resolver)
void CyanEngine.StartResolver(string[] args, Func<ResolverInput, Task<ResolverOutput>> fn)

Parameters

Prop

Type

Example

CyanEngine.StartResolver(
args,
async (ResolverInput input) =>
{
return new ResolverOutput("path", "content");
}
);

Server Behavior

The resolver server:

  1. Starts on port 5553
  2. Exposes /api/resolve endpoint
  3. Expects JSON request body matching ResolverInput
  4. Returns JSON response matching ResolverOutput

Request/Response Flow

The SDK handles all HTTP server setup and routing automatically. You only need to implement the resolver logic function.